(一) RK3566 Android11 系统编译
Posted 只要可乐
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(一) RK3566 Android11 系统编译相关的知识,希望对你有一定的参考价值。
RK3566 android11 编译
1. 准备工作
编译 Android 对机器的配置要求较高,具体配置如下:
(1)64 位 CPU,4 核;
(2)32GB 物理内存+交换内存;
(3)250GB 空闲的磁盘空间。
这里使用的是 Ubuntu 18.04 操作系统,安装编译需要的软件包:
sudo apt-get update
sudo apt-get install git gnupg flex bison gperf libsdl1.2-dev \\
libesd-java libwxgtk3.0-dev squashfs-tools build-essential zip curl \\
libncurses5-dev zlib1g-dev pngcrush schedtool libxml2 libxml2-utils \\
xsltproc lzop libc6-dev schedtool g++-multilib lib32z1-dev lib32ncurses5-dev \\
lib32readline-dev gcc-multilib libswitch-perl libssl-dev unzip zip device-treecompiler \\
liblz4-tool python-pyelftools python3-pyelftools -y
在 Ubuntu 18.04 新建一个目录用来存放 android11 所有包:
把android11 SDK拷贝到android11目录下,解压1.tar压缩包到当前目录:
**注意:**不要在共享文件夹、挂载文件夹以及非英文目录解压SDK,避免产生不必要的错误
在当前目录下同步代码:.repo/repo/repo sync -l
2. 编译kernel
手动编译RK3566 Android11.0
cd ~/android11/kernel/
执行下面两条命令:
make ARCH=arm64 rockchip_defconfig rk356x_evb.config android-11.config
make ARCH=arm64 rk3566-evb2-lp4x-v10.img -j24
其他编译说明: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 中。编译命令如下:
make ARCH=arm64 rockchip_defconfig android-11.config
make ARCH=arm64 BOOT_IMG=../rockdev/Image-rk3566_r/boot.img rk3566-evb2-
lp4x-v10-edp.img -j24
BOOT_IMG=…/rockdev/Image-rk3566_r/boot.img 这里指定的是旧的 boot.img 的
路径。
3. uboot 编译
cd ~/android11/u-boot/
./make.sh rk3566
4. Android 编译
source build/envsetup.sh
lunch rk3566_r-userdebug
make clean
make -j24
./mkimage.sh
完整编译会生成如下文件:
固件说明:
至此Android11编译Kernel、编译u-boot、编译android11工作做完。
以上是关于(一) RK3566 Android11 系统编译的主要内容,如果未能解决你的问题,请参考以下文章