03-ANDROID_SDK编译

符号说明

< SDK > : 指代SDK源码路径

SDK介绍

内核版本:5.10

Android系统版本:13.0

获取SDK源码

  • 网盘目录

1-SDK源码\rk356x-android13\
	rk356x-android13-*.tar.gz
  • 拷贝源码压缩包到编译主机目录

    若编译主机为虚拟机,不可放在共享目录下编译

  • MD5校验文件完整性

$ md5sum -c *.md5
  • 解压源码压缩包

$ tar -zxvf rk356x-android13-*.tar.gz
$ cd rk356x-android13-*
$ ls -al <SDK>
	.git

SDK源码压缩包通过Git仓库分享,可用ls -al命令查看到.git文件夹

  • 还原源码文件

进入解压出的目录下,通过git还原源码

注意:请在Linux下操作 并且安装了git

编译完整镜像

根据CPU型号,选择对应编译命令;若编译失败,可尝试自行解决,或联系技术客服解决

配置SDK编译项

配置选择后,软件会配置成选择的设备;若切换设备需要重新配置,否则无需多次配置

编译完整镜像

镜像生成目录:rockdev/Image-*/update-*.img

如果有接屏,请先选择你使用的屏配置:屏设备树配置arrow-up-right

可配置编译线程选项,指定线程32

注意:如果遇到编译Android时就失败了,但是没什么具体报错,大概率虚拟机配置过低;

或修改 build.sh 里面的默认配置后重新尝试

单独编译分区镜像

单独编译Uboot

镜像生成目录:rockdev/Image-*/uboot.img

单独编译Kernel

镜像生成目录:rockdev/Image-*/boot.img

单独编译Android

镜像生成目录:rockdev/Image-*/super.img

android 环境配置

配置命令环境,可以使用 mm / get_build_var 等安卓环境下命令

设备配置选择

根据实际,选择对应的设备,比如'K1'和'K1B'为 rk3568

2a41026b5899c13dcc725f59858abd7

加载对应环境脚本

环境配置成功,可以使用Android下相关命令,比如

其他常用命令

内核配置

编译多屏自适应镜像

出厂Android/Linux镜像默认为多屏自适应镜像,兼容官方7寸/10寸/15寸显示屏,连接任一显示屏可直接点亮

常见问题

下面列举SDK编译过程中遇到的各种常见问题和解决方法或解决思路

配置不足

因内存配置不足,常见日志报错

  • 出现Killed

  • 解决方法:

增加实际内存,Android一般内存推荐32G,如果增加不了可以尝试,增加swap分区大小并且使用单线程编译看看

配置线程选项,指定单线程

编译出的镜像烧录后屏幕不亮

我们网盘提供的是多屏自适应镜像,需要特殊指令编译,参考编译多屏自适应镜像

如果你只是完整编译,需要自己去选择你使用的屏,参考文档

kickpi-book/common/en/driver/LCDarrow-up-right

kickpi-book/common/zh/driver/LCD

编译报错问题日志抓取

通过 | tee build.log 组合将编译信息抓取到 build.log 中。

Last updated