综合技术交流
直播中

zhangfen137

4年用户 124经验值
擅长:测量仪表 嵌入式技术 处理器/DSP
私信 关注
[经验]

toybrick_RK3568X开发板:瑞芯微 SDK 编译 android 过程

toybrick_RK3568X开发板编译android 命令如下:

source build/envsetup.sh
lunch rk3568_r-userdebug
./build.sh -AUCKu -d rk3568-toybrick-core-android-x0

source build/envsetup.sh:导入编译环境,和 android 官方一行

lunch rk3568_r-userdebug:解析 3 个变量,和android 官方的一样

./build.sh -AUCKu -d rk3568-toybrick-core-android-x0:编译过程,和 android 官方的不一样

这条编译命令集合了四种功能,调用以下四部分编译命令:

1,编译 uboot

UBOOT_DEFCONFIG=`get_build_var PRODUCT_UBOOT_CONFIG`
cd u-boot && make clean
&&  make mrproper &&  make distclean && ./make.sh $UBOOT_DEFCONFIG && cd

2,编译 kernel,用 clang 编译器编译

ADDON_ARGS="CC=../prebuilts/clang/host/linux-x86/clang-r383902b/bin/clang
LD=../prebuilts/clang/host/linux-x86/clang-r383902b/bin/ld.lld"

同时传进来了 dts

KERNEL_DTS=rk3568-toybrick-core-android-x0
KERNEL_ARCH=`get_build_var PRODUCT_KERNEL_ARCH`
KERNEL_DEFCONFIG=`get_build_var PRODUCT_KERNEL_CONFIG`
cd kernel && make clean && make  ARCH=$KERNEL_ARCH $KERNEL_DEFCONFIG && make ARCH=$KERNEL_ARCH $KERNEL_DTS.img -j$BUILD_JOBS && cd

3,编译 android

make installclean
make -j$BUILD_JOBS

4,打包

./mkimage.sh
./mkupdate_$TARGET_BOARD_PLATFORM.sh

编译顺序也是按照以上1,2,3,4 顺序编译

想要分析编译代码的话,可以加上这个 patch,编译完成过程文件都保留着自己分析代码
图片.png
直接打上这个patch 重新编译一边,完了能看到详细的编译过程代码

https://github.com/robe-zhang/rk3568_android_patch/blob/master/0001-keep-image-file-for-reading.patch

笔者大概看了一下编译过程,编译细节后面结合代码看。
<完>

更多回帖

发帖
×
20
完善资料,
赚取积分