原创 源码编译 | 飞凌嵌入式OK3568-C开发板快速上手

2022-9-3 09:36 420 5 5 分类: MCU/ 嵌入式 文集: 软件技术

本文将为大家介绍在飞凌嵌入式OK3568-C开发板上进行源码编译的过程,希望能够对各位工程师小伙伴有所帮助。话不多说,我们马上进入正题。


1

准备源码



1. 创建工作目录

$mkdir -p ~/rk3568

2. 拷贝源码

将用户资料中的源码文件OK3568-linux-source.tar.bz2.a*拷贝到虚拟机~/rk3568目录。

【注】OK3568源码使用分段压缩,每段最大4G,这样方便拷贝,因此有些存储器单文件最大支持4G。


3. 解压源码

$cat OK3568-linux-source.tar.bz2.a* >OK3568-linux-source.tar.bz2

$tar -xvf OK3568-linux-source.tar.bz2

耐心等待完成即可,解压时间有点久。

4. 进入源码

$cd ~/rk3568/OK3568-linux-source

目录结构

2

编译SDK



1. 编译前配置

device/rockchip/ok3568/目录下,有不同板型的配置文件,选择配置文件:

$./build.shBoardConfig-ok3568.mk  

相关配置介绍:

2. 编译

编译u-boot

$./build.shuboot

编译kernel

$./build.shkernel

【注】编译一段时间后会弹出下图界面,需要选择,提取图中信息,VCCIO4和VCCIO6选择1800000其余选择3300000,使用上下方向按键选择选项,按回车确认选择即可。


编译recovery

$./build.shrecovery

编译Buildroot根文件系统

$./build.shbuildroot

制作文件系统的时间会比较久,请耐心等待编译完成。


【注1】确保作为普通用户编译Buildroot根文件系统,避免不必要的错误;

【注2】如果不想编译文件系统,也可直接从已有的镜像中解压后,将其拷贝到rockdev目录下。


3. 打包固件

更新各部分镜像链接到rockdev/目录:

$./mkfirmware.sh

打包固件,生成的完整固件会保存到rockdev/目录。

$./build.shupdateimg

[PS]全自动编译

全自动编译会执行上述编译、打包操作,生成完整固件。

$./build.sh



3

分区说明



1. parameter 分区表

parameter.txt文件中包含了固件的分区信息,以parameter-buildroot.txt为例:

路径:

device/rockchip/ok3568/parameter-buildroot-fit.txt

2. package-file

package-file文件用于打包固件时确定需要的分区镜像和镜像路径,同时它需要与parameter.txt文件保持一致。


路径:

tools/linux/Linux_Pack_Firmware/rockdev/rk356x-package-file

#NAME        Relative path

#

#HWDEF             HWDEF

package-filepackage-file

bootloader  Image/MiniLoaderAll.bin

parameter   Image/parameter.txt

#trust          Image/trust.img

uboot          Image/uboot.img

misc             Image/misc.img

#resource    Image/resource.img

#kernel        Image/kernel.img

boot            Image/boot.img

recovery      Image/recovery.img

rootfs          Image/rootfs.img

oem             Image/oem.img

userdata      Image/userdata.img


#要写入backup分区的文件就是自身(update.img)

#SELF 是关键字,表示升级文件(update.img)自身

#在生成升级文件时,不加入SELF文件的内容,但在头部信息中有记录

#在解包升级文件时,不解包SELF文件的内容。


backup        RESERVED

#update-script   update-script

#recover-script   recover-script

4

镜像制作



编译源码可直接得到镜像,但是编译时间太长,有些部分不需要再次编译,只需要从已有的镜像中解包,然后再和新编译的部分组合打包即可,下面是制作方法。


1. 工具安装

下载工具包:

$git clone 

https://github.com/TeeFirefly/rk2918_tools.git  


进入工具包目录:

$cd rk2918_tools

编译:

$make

文章评论0条评论)

登录后参与讨论
我要评论
0
5
关闭 站长推荐上一条 /2 下一条