android7.1编译路上的那些坑!(部分转自网络整理)

1、FAILED: setup-jack-server
Jack server installation not found
到prebuilts/sdk/tools 目录下执行一下这个命令:./jack-admin install-server jack-launcher.jar jack-server-4.11.ALPHA.jar
jack-launcher.jar,jack-server-4.11.ALPHA.jar这两个文件的名字视 prebuilts/sdk/tools 目录下的文件名而定。

2、编译android 7.0 出现Try increasing heap size with java option '-Xmx'错误解决方案
出现这个错误是由于电脑内存不足,在命令行分别执行以下三条语句,然后继续编译
export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4g"
./prebuilts/sdk/tools/jack-admin kill-server
./prebuilts/sdk/tools/jack-admin start-server

3、Building with Jack: out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/with-local/classes.dex
FAILED: /bin/bash out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/with-local/classes.dex.rsp
Out of memory error (version 1.2-a26 'Carnac' (291201 fcd657165d2fd6dcf1bf4c3002c9c8f75383e815 by [email protected])).
GC overhead limit exceeded.
Try increasing heap size with java option '-Xmx'.
Warning: This may have produced partial or corrupted output.
ninja: build stopped: subcommand failed.
在文件/prebuilts/sdk/tools/jack-admin中修正-Xmx参数。
修改变量JACK_SERVER_VM_ARGUMENTS,添加参数 -Xmx2048M
JACK_SERVER_VM_ARGUMENTS="${JACK_SERVER_VM_ARGUMENTS:=-Dfile.encoding=UTF-8 -XX:+TieredCompilation -mx2048M}"

4、编译提示permission denied。查遍网络找不到答案,最后ll了一下jack-admin文件。发现在windows端没次修改这个文件后权限都会从775变成675,最后chmod775解决,当然这个是服务器的原因
实际这个是因为个人samba配置问题。解决这个是将/etc/samba/smb.conf改为:
create mask = 0600
directory mask = 0700

5、编译提示cppninja: fatal: fork: Cannot allocate memory,需要新增虚拟内存,步骤如下:
1.创建交换分区的文件:如增加1G大小的交换分区,则命令写法如下,其中的 count 等于想要的块大小:
sudo dd if=/dev/zero of=/home/swapfile bs=1M count=1024
2.设置交换分区文件:
sudo mkswap /home/swapfile #建立swap的文件系统
3.立即启用交换分区文件:
sudo swapon /home/swapfile #启用swap文件
4.使系统开机时自启用,在文件/etc/fstab中添加一行:
/home/swapfile swap swap defaults 0 0
以上操作后重新make即可。

你可能感兴趣的:(android7.1编译路上的那些坑!(部分转自网络整理))