构建系统
介绍 瑞莎 Cubie A7Z 编译 Android 系统的完整步骤。
系统要求
- 内存:推荐 32GB RAM,最低 16GB RAM
- 系统:推荐 Ubuntu 22.04 及以上版本
增加交换内存
若使用 16GB RAM,编译 Android 系统前需要开启交换内存。
Ubuntu$
sudo fallocate -l 16G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
安装依赖
Ubuntu$
sudo apt update -y
sudo apt install libelf-dev libssl-dev bc flex bison dwarves repo git-lfs libncurses5 gawk lib32z1 lib32z1-dev -y
源码下载
Ubuntu$
mkdir -p ~/android
cd ~/android
repo init -u https://github.com/radxa/allwinner-android-manifests -b Android13_A733_v1.0 -m aw-a733-release.xml
repo sync
repo forall -c 'git lfs pull'
系统构建
使用源码编译 Android 系统。
配置型号
进入下载的源码 longan 目录,使用 ./build.sh config 进行型号配置。
Ubuntu$
cd ~/android/longan
./build.sh config
在终端的交互式配置中,依次选择以下选项:
- 系统平台选择 -> Android
- 系统主控选择 -> a733
- 主板型号选择 -> radxa_a7z
- Flash 选择 -> default
编译内核
Ubuntu$
cd ~/android/longan
./build.sh
编译完成后,终端会出现类似 sun60iw2p1 compile all(Kernel+modules+boot.img) successful 的提示信息。
其中生成的内核文件位于当前文件夹下的 out 目录。
编译 Android 系统
设置编译环境
Ubuntu$
cd ~/android
source build/envsetup.sh
选择构建型号
Ubuntu$
lunch <board-model>
将命令中的 <board-model> 修改成 a733_radxa_a7z-userdebug,命令示例:lunch a733_radxa_a7z-userdebug
编译 Android 系统
Ubuntu$
make -j$(nproc)
编译成功后,终端会出现类似 #### build completed successfully (06:06 (mm:ss)) #### 的提示信息。
生成烧录镜像
Ubuntu$
pack
打包镜像完成后,终端会输出打包的镜像大小和文件路径。