荣品3568搭建编译Buildroot环境(基于ubuntu1604_64)

荣品3568搭建编译Buildroot环境(基于ubuntu1604_64)

1 解压代码

$ tar xzvf RK3566-RK3568-SDK-XXX.tgz

2 查看是否生成.git

$ ls -al
drwxrwxr-x 8 fxb fxb 4096 May 9 14:33 .git

3 恢复完整的源码

$ git reset --hard

如果 git reset --hard 指令执行结束后看不到完整源码,请比较压缩包的 md5 校验码是否一致,不一致请重新下载源码包

3.1 源码目录说明

├──app:#存放上层应用 APP,主要是 qcamera/qfm/qplayer/qseting 等一些应用程序。
├──buildroot:#基于 Buildroot(2018.02-rc3)开发的根文件系统。
├──device/rockchip:#存放各芯片板级配置以及一些编译和打包固件的脚本和预备文件。
├──docs:#存放开发指导文件、平台支持列表、工具使用文档、Linux 开发指南等。
├──IMAGE:#存放每次生成编译时间、XML、补丁和固件目录。
├──external:#存放第三方相关仓库,包括音频、视频、网络、recovery 等。
├──kernel:#存放 Kernel 4.19 开发的代码。
├──prebuilts:#存放交叉编译工具链。
├──rkbin:#存放 Rockchip 相关 Binary 和工具。
├──rockdev:#存放编译输出固件。
├──tools:#存放 Linux 和 Window 操作系统下常用工具。
├──u-boot:#存放基于 v2017.09 版本进行开发的 U-Boot 代码。
└──yocto:#存放基于 Yocto 3.2 开发的根文件系统。

4 编译 (以下操作,若无特殊说明,均在源码根目录下进行)

4.1 搭建编译环境

sudo apt-get install repo git ssh make gcc libssl-dev liblz4-tool expect g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g+±multilib unzip device-tree-compiler python-pip ncurses-dev pyelftools

注意:编译过程中可能会因为缺少某些库或软件,安装相应的报错即可。

4.2buildroot(linux)系统编译

4.2.1 选择对应的开发板配置
$ ./build.sh init
1. BoardConfig-pro-rk3566-buildroot.mk
2. BoardConfig-pro-rk3566-debian.mk
3. BoardConfig-pro-rk3568-buildroot.mk
4. BoardConfig-pro-rk3568-debian.mk

Which would you like? [0]: 3 #选择 31 编译 pro-rk3568-buildroot 版型
4.2.2 配置buildroot默认环境
source envsetup.sh
Top of tree: /home/rpdzkj/third/lixin/rk3566-rk3568/rk3566-rk3568-linux
You're building on Linux
Lunch menu...pick a combo:
0. non-rockchip boards
. 
. 
. 
62. rockchip_rk3566 # pro-rk3566 选择62
63. rockchip_rk3568 # pro-rk3568 选择63
. 
. 
. 
1. rockchip_rv1126_rv1109_uvcc_spi_nand
Which would you like? [0]: 63

或者执行如下指令直接选择版型:
$ source envsetup.sh rockchip_rk3566
4.2.2 编译代码
$ ./build.sh # 默认编译 uboot、kernel、rootfs、recovery

编译成功后将会在 rockdev/ 目录下生成如下镜像文件:

$ ls rockdev/

MiniLoaderAll.bin #引导 uboot、检测启动方式
parameter.txt #系统分区表、内核传参
uboot.img #引导系统分区
trust.img #ARM TrustZone 特性分区
misc.img #记录 recovery 升级信息
boot.img #内核、设备树、logo 分区
recovery.img #恢复还原分区
rootfs.img #根文件系统分区
oem.img #存放 OEM 资源分区
update.img #完整固件 用于整包烧写
4.2.3 Tips
单独编译 uboot
$ ./build.sh uboot
生成镜像:rockdev/uboot.img

单独编译 kernel
$ ./build.sh kernel
生成镜像:rockdev/boot.img

单独编译buildroot文件系统
$ ./build.sh buildroot
生成镜像:rockdev/rootfs.img

单独编译recovery
$ ./build.sh recovery
生成镜像:rockdev/recovery.img

单独编译 buildroot 应用

单独编译 qcamera 应用 
$ make qcamera -dirclean && make qcamera -rebuild -j16

单独编译 rkwifibt
$ make rkwifibt-dirclean && make rkwifibt-rebuild -j16

.
.
.
自己脑补...

你可能感兴趣的:(荣品3568,linux)