android源码编译时报错cd "$(dirname "out/host/linux-x86/bin/soong_build")"......

201 阅读1分钟

记录下在编译android源码时,出现了下面的报错:

[100% 1/1] analyzing Android.bp files and generating ninja file at out/soong/bui
FAILED: out/soong/build.ninja
cd "$(dirname "out/host/linux-x86/bin/soong_build")" && BUILDER="$PWD/$(basename
 "out/host/linux-x86/bin/soong_build")" && cd / && env -i  "$BUILDER"     --top 
"$TOP"     --soong_out "out/soong"     --out "out"     -o out/soong/build.ninja 
--globListDir build --globFile out/soong/globs-build.ninja -t -l out/.module_pat
hs/Android.bp.list --available_env out/soong/soong.environment.available --used_
env out/soong/soong.environment.used.build Android.bp
Killed
14:19:43 soong bootstrap failed with: exit status 1
ninja: build stopped: subcommand failed.

#### failed to build some targets (47 seconds) ####

这个主要是因为电脑的内存不够了,解决办法是:1、加大电脑的内存(换内存条或者加内存条);2、增加swap的内存。 这里采用第二种方法,具体操作如下:

  1. 回到根目录: cd
  2. 查看交换区大小: free -m
  3. 关闭原来的swap文件: sudo swapoff /swapfile
  4. 删除原来的swpa文件:sudo rm /swapfile
  5. 重新创建spap文件:sudo dd if=/dev/zero of=/swapfile bs=1G count=16(代表16G)
  6. 赋予权限:sudo chmod 0600 /swapfile
  7. 创建文件系统:sudo mkswap -f /swapfile
  8. 开启swapfile:sudo swapon /swapfile

至此,解决该问题。