2. Android SDK编译
SDK介绍
Android SDK版本信息
内核版本:5.4
Android系统版本:12.0
获取SDK源码
网盘下载目录
1-SDK\Android12.0\
h618-android12.0-xxxxxxxxxx.tar.gz
建议下载日期最新的版本拷贝源码压缩包到编译主机目录
注意事项:
源码不可放在共享目录下编译
编译主机不可用ROOT账号登陆
MD5校验文件完整性
$ md5sum -c *.md5解压源码压缩包
解压完成后,查看源码目录仅有.git文件夹,需要执行下一步才能完成恢复出源码
Git恢复源码目录
首次编译环境配置
首次编译需要配置一下编译环境,后续不改变sdk位置,则无需重复配置
选择主板
说明
BoardConfig-kickpi-'boadr'-'desktop'
board:主板 k2b / k2c
desktop:桌面 tv / tablet
编译完整镜像
镜像生成目录:longan/out/h618_android12_p2_uart0.img
注意:如果编译Android的时候失败了,没有明显的报错,可以修改build.sh 里面Android编译的进程数,将make -j32减小至你设备的实际情况。
单独编译分区镜像
单独编译Uboot
镜像生成目录:longan/out/h618_android12_p2_uart0.img
单独编译Kernel
镜像生成目录:longan/out/h618_android12_p2_uart0.img
配置内核
单独编译Android
镜像生成目录:longan/out/h618_android12_p2_uart0.img
设备树路径
常见问题
安卓编译失败
编译安卓时失败 且没有明显错误报错,修改一下内容尝试重新编译

APP 文件编译不生效问题
android 为惰性编译,直接替换后编译,一些APP、文件不一定编译到镜像中
可以通过如下其中一种方式解决
make installclean
rm out/target/product/apollo-p2/xxx/xxx
编译的条件发生变化(比如文件名、APK名)
全部编译替换不生效问题
由于惰性编译,一些编译目标或依赖直接替换文件,在编译时不会拷贝生效。
编译前需要先手动清除:
Last updated