三、编译Android源码与Linux内核

1准备Android编译环境

需要安装编译过程中的依赖的其他第三方库。

sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip

2编译Android源码

 

source build/envsetup.sh

三、编译Android源码与Linux内核

lunch full-eng

三、编译Android源码与Linux内核

make -j4,为CPU内核数,能提高编译效率。

三、编译Android源码与Linux内核

编译报错如下:

三、编译Android源码与Linux内核

处理方法:删除目录sdm845(参考https://groups.google.com/forum/?nomobile=true#!topic/android-building/k5RKBPNGMrg

三、编译Android源码与Linux内核

编译报错:

ninja: build stopped: subcommand failed.

执行命令:

ulimit -c unlimited

执行如下命令(这个方法未生效):

export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4096m"
out/host/linux-x86/bin/jack-admin kill-server
out/host/linux-x86/bin/jack-admin start-server

大约几个小时,编译成功。

三、编译Android源码与Linux内核
3测试Android镜像