跳转至

Android SDK编译

SDK源码获取

Note

1.源码不可放在共享目录下编译
2.编译主机不可用ROOT账号登陆

1.SDK下载

2.拷贝源码压缩包到编译主机目录

3.MD5校验文件完整性

示例:假如下载的SDK代码文件的MD5校验文件名为t527-android13.0-20251103.md5,执行命令校验文件是否完整

md5sum -c t527-android13.0-20251103.md5

执行结果:

t527-android13.0-20251103.tar.gz: OK

4.解压源码压缩包

示例:假如源码压缩包名为t527-android13.0-20251103.tar.gz,执行下面命令可以解压源码压缩包

tar -zxvf t527-android13.0-20251103.tar.gz

执行结果,终端输出以下信息:

./.git/
./.git/objects/
./.git/objects/info/
./.git/objects/pack/
./.git/objects/pack/pack-1c772b481d2d4daa60f5065d9dde9eba68aa09f4.pack
./.git/objects/pack/pack-1c772b481d2d4daa60f5065d9dde9eba68aa09f4.idx
./.git/objects/pack/pack-f3436a64e1037f9724ac55cf89574b61f11e60a5.pack
./.git/objects/pack/pack-f3436a64e1037f9724ac55cf89574b61f11e60a5.idx
./.git/description
./.git/branches/
./.git/FETCH_HEAD
./.git/hooks/
./.git/hooks/applypatch-msg.sample
./.git/hooks/pre-commit.sample
.....
........

5.解压完成后,查看源码目录仅有.git文件夹,输入下列命令恢复源码目录。

git reset --hard

首次编译环境配置

首次编译需要配置一下编译环境,后续不改变sdk位置,则无需重复配置

1.在源码解压目录下,执行以下命令进入longan目录:

cd longan

2.执行以下命令配置开发板的核心信息。

./build.sh config

执行步骤:

Warning

请按照以下示例进行配置,如果您的配置跟下列配置不同,可能会导致开发板运行异常。

选择如下配置
========ACTION List: mk_config ;========
options :
All available platform:
   0. android
   1. linux
Choice [android]: 0
All available ic:
   0. a523
   1. a527
   2. t527
Choice [t527]: 2
All available board:
   0. demo
   1. demo_battery
   2. demo_car
   3. demo_fastboot
   4. demo_linux_aiot
   5. demo_linux_car
Choice [demo]: 0
All available flash:
   0. default
   1. nor
Choice [default]: 0

3.上述步骤完成后,执行以下命令选择板卡具体型号:

./build.sh lunch 

Tip

这里我们选择第二项即可,输入数字2

will lunch sdk

You're building on Linux
Lunch menu...pick a combo:

1. BoardConfig-t527-default.mk
2. BoardConfig-t527-kickpi-k9.mk
Which would you like? [0]: 2

编译完整镜像

1.编译完整镜像前先回到解压目录,执行以下命令:

cd -     

2.执行命令开始编译完整镜像:

./build_all.sh

Notes

编译速度取决于电脑配置,通常编译时间在30分钟到90分钟之间。
镜像生成目录:longan/out/update-t527-kickpi_k9_v1.0-android13-lvds0-7-1024-600-2025110410-v1.0.img

执行结果:

image-20251105222717996

局部编译

Tip

编译Uboot、Kernel、配置内核都在longan目录下执行

cd longan

单独编译Uboot

./build.sh uboot

单独编译Kernel

./build.sh kernel

配置内核

./build.sh menuconfig
./build.sh saveconfig

单独编译Android

Tip

编译Android在源码顶层目录执行

cd -
make -j16

设备树路径

Tip

uboot和kernel各有一份单独的设备树文件。

kernel的设备树路径:

longan/device/config/chips/t527/configs/demo/kickpi_k9_v1.0_kernel.dts

uboot的设备树路径:

longan/device/config/chips/t527/configs/demo/uboot-board.dts