rk3568代码编译

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

目录

前言

一、一键编译命令

二、各个平台编译命令汇总

1.其他编译说明

Android11.0不能直接烧写kernel.img和resource.img

单独编译kernel生成boot.img


前言

我们拉取代码完成后,一般要先编译下系统。看看是否编译通过防止在后面代码编写完还要去更新一些库文件等等。建议第一次编译使用一键编译命令哈。


一、一键编译命令

请注意使用一键编译命令之前需要设置环境变量,选择好自己需要编译的平台,

举例:

source build/envsetup.sh

lunch rk3566_rgo-userdebug(也可以先使用lunch回车查看自己要编译的版本。填入相关的数字就行,或者简单点“lunch 33”这里的33就是代表着“ rk3566_rgo-userdebug”)

./build.sh -UKAu

( WHERE: -U = build uboot

-C = build kernel with Clang

-K = build kernel

-A = build android

-p = will build packaging in IMAGE 

-o = build OTA package

-u = build update.img

-v = build android with 'user' or 'userdebug'

-d = huild kernel dts name

-V = build version

 -J = build jobs

------------大家可以按需使用,不用记录uboot/kernel编译命令了------------------ )

二、各个平台编译命令汇总

Soc 类型 机型 Android        一键编译 kernel编译 uboot编 译
RK3566 平板 样机 build/envsetup.sh;lunch
rk3566_rgo-userdebug
./build.sh - AUCKu make ARCH=arm64 rockchip_defconfig android-11.config;make ARCH=arm64 rk3566- rk817-tablet.img -j24 ./make.sh rk3566
RK3568 开发板 EVB1- DDR4-V10 build/envsetup.sh;lunch
rk3568_r-userdebug
./build.sh - AUCKu make ARCH=arm64 rockchip_defconfig rk356x_evb.config android-11.config;make ARCH=arm64 rk3568- evb1-ddr4-v10.img -j24 ./make.sh rk3568        
RK3568 开发板 EVB2- LPDDR4X- V10 build/envsetup.sh;lunch
rk3568_r-userdebug
./build.sh - AUCKu make ARCH=arm64 rockchip_defconfig rk356x_evb.config android-11.config;make ARCH=arm64 rk3568- evb2-lp4x-v10.img -j24 ./make.sh rk3568 
RK3568 开发板 EVB4- LPDDR3- V10 build/envsetup.sh;lunch
rk3568_r-userdebug
./build.sh - AUCKu make ARCH=arm64 rockchip_defconfig rk356x_evb.config android-11.config;make ARCH=arm64 rk3568- evb4-lp3-v10.img -j24 ./make.sh rk3568 
RK3568 开发板 EVB5- DDR4-V10 build/envsetup.sh;lunch
rk3568_r-userdebug
./build.sh - AUCKu make ARCH=arm64 rockchip_defconfig rk356x_evb.config android-11.config;make ARCH=arm64 rk3568- evb5-ddr4-v10.img -j24 ./make.sh rk3568 
RK3568 开发板 EVB6- DDR3-V10 build/envsetup.sh;lunch
rk3568_r-userdebug
./build.sh - AUCKu make ARCH=arm64 rockchip_defconfig rk356x_evb.config android-11.config;make ARCH=arm64 rk3568- evb6-ddr3-v10.img -j24 ./make.sh rk3568 
RK3568 开发板 EVB7- DDR4-V10 build/envsetup.sh;lunch
rk3568_r-userdebug
./build.sh - AUCKu make ARCH=arm64 rockchip_defconfig rk356x_evb.config android-11.config;make ARCH=arm64 rk3568- evb7-ddr4-v10.img -j24 ./make.sh rk3568 
RK3566 开发板 EVB1- DDR4-V10 build/envsetup.sh;lunch
rk3566_r-userdebug
/build.sh - AUCKu -d rk3566- evb2-lp4x- v10 make ARCH=arm64 rockchip_defconfig rk356x_evb.config android-11.config;make ARCH=arm64 rk3566- evb1-ddr4-v10.img -j24 ./make.sh rk3566
RK3566 开发板 EVB2- LP4X-V10 build/envsetup.sh;lunch
rk3566_r-userdebug
./build.sh - AUCKu -d rk3566- evb2-lp4x- v10 make ARCH=arm64 rockchip_defconfig rk356x_evb.config android-11.config;make ARCH=arm64 rk3566- evb2-lp4x-v10.img -j24 ./make.sh rk3566
RK3566 开发板 EVB3- DDR3-V10 build/envsetup.sh;lunch
rk3566_r-userdebug
./build.sh - AUCKu -d rk3566- evb2-lp4x- v10 make ARCH=arm64 rockchip_defconfig rk356x_evb.config android-11.config;make ARCH=arm64 rk3566- evb3-ddr3-v10.img -j24 ./make.sh rk3566

1.其他编译说明

Android11.0不能直接烧写kernel.img和resource.img

Android11.0的kernel.img和resource.img包含在boot.img中,需要使用build.sh -K 命令来编译
kernel。编译后烧写rockdev下面的boot.img。也可以使用如下方法单独编译kernel。

单独编译kernel生成boot.img

编译的原理:在kernel目录下将编译生成的 kernel.img 和 resource.img 替换到旧的 boot.img 中。
以 RK3566 样机为例,编译时替换对应的boot.img及dts:
其中 BOOT_IMG=../rockdev/Image-rk3566_r/boot.img 这里指定的是旧的boot.img的路径,命令如
下:

cd kernel 
make ARCH=arm64 rockchip_defconfig android-11.config 
make ARCH=arm64 BOOT_IMG=../rockdev/Image-rk3566_r/boot.img rk3566-rk817- tablet.img -j24

编译后可以直接烧写kernel目录下的boot.img(注意:32bit的平台是zboot.img,如3126c/rk3288w)
到机器的boot位置,烧写时请先加载分区表(parameter.txt),以免烧写位置错误。

你可能感兴趣的:(RK3568Android,android,驱动开发,c++,嵌入式硬件,arm)