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,编译完成过程文件都保留着自己分析代码
直接打上这个patch 重新编译一边,完了能看到详细的编译过程代码
https://github.com/robe-zhang/rk3568_android_patch/blob/master/0001-keep-image-file-for-reading.patch
笔者大概看了一下编译过程,编译细节后面结合代码看。
<完>
|