编译AOSP并生成镜像
- 编译AOSP源码。
- 将envsetup.sh中所有用到的命令加载到环境变量中。
1 2
cd ~/aosp/ source build/envsetup.sh
- 选择编译模式。
1
lunch kbox_arm64-user
此处默认采用user模式编译镜像。若需要采用userdebug模式编译镜像,请将上述lunch命令后的选项“kbox_arm64-user”修改为“kbox_arm64-userdebug”,如下所示。1
lunch kbox_arm64-userdebug
- 执行编译。
1 2
make clean make -j
在执行上述命令时,“-j”后的数字参数要根据服务器实际的CPU(Central Processing Unit)核数来定。CPU核数可通过以下命令查询。
1
cat /proc/cpuinfo |grep "processor" | wc -l
可不指定核数,直接执行make命令,则默认用1个核进行编译,也可用“-j”参数指定核数进行编译,可指定的数字最大为服务器实际的CPU核数,本文以64核为例进行说明。
正常情况下,能够编译完成。有时可能由于并发编译顺序导致编译出现问题,可尝试重新执行make命令。
- 将envsetup.sh中所有用到的命令加载到环境变量中。
- 解压Kbox-AOSP11.zip,将Kbox-AOSP11文件夹中的make_img_sample目录上传至“~/dependency”目录。
请对上传文件、目录的权限进行合理配置,其他用户属组建议不配置写权限。
- 拷贝生成镜像脚本至“~/aosp”目录,并添加可执行权限。
1 2 3 4
cd ~/dependency/make_img_sample/kbox11_android_build cp create-package.sh ~/aosp/ cd ~/aosp chmod +x create-package.sh
- 运行脚本,生成Kbox安卓镜像。
制作镜像的时候需要root权限,请用root用户执行脚本,且执行脚本时,目录需要使用绝对路径。
1
./create-package.sh ~/aosp/out/target/product/arm64/system.img
至此,Kbox安卓镜像制作完成,在当前目录下会生成名为android.tar的Kbox镜像。
父主题: 编译AOSP源码与镜像生成