编译linux SDK

参考正点原子

编译环境是 ubuntu20.04。Linux 源码包是rk356x_linux_XXXXXXX.tar.gz。使用命令“ tar -vxf rk356x_linux_XXXXXXX.tar.gz解压,解压后会生成一个 rk356x_linux 文件夹。

1、编译 uboot
./build.sh uboot

编译成功生成

<SDK>/uboot/uboot.img
<SDK>/uboot/rk356x_spl_loader_v1.13.112.bin
 

2、编译 kernel
./build.sh kernel
编译成功生成<SDK>/kernel/boot.img

3、编译 Recovery

./build.sh recovery
编译成功生成rootfs.img,在目录下buildroot/output/rockchip_rk356x_recovery/images/

4、编译 rootfs

选择buildroot根文件系统

./build.sh buildroot

编译成功生成rootfs.img,在目录下
buildroot/output/rockchip_rk3568/images/
 

5、打包镜像

./build.sh firmware
将前面编译的镜像移动到 rockdev 目录下

./build.sh updateimg
将 rockdev 目录下的镜像打包 update.img 镜像

6、SDK 板级配置文件

板级配置文件位于目录<SDK>/device/rockchip/rk356x/。xxx.mk文件就是板级配置文件,.mk 文件其实是一个 sh 脚本文件,通过 export 导出一些环境变量。

7、uboot

U-Boot 源码在<SDK>/u-boot 目录

### 解决虚拟机中编译 Linux SDK 报错的方法 当在 VMware 虚拟机中编译 Linux SDK 遇到错误时,可以采取多种措施来解决问题。对于【正点原子】的 RK3568 开发板,在扩展了 Ubuntu 20.04 的硬盘空间之后,编译过程能够正常通过[^1]。 如果遇到缺少特定头文件的情况,比如 `ft2build.h` 文件缺失,则应检查 ToolChain 下的相关路径,确认该文件是否存在指定位置 `/arm-buildroot-linux-gnueabihf_sdk-buildroot/arm-buildroot-linux-gnueabihf/sysroot/usr/include` 中[^2]。若确实不存在此文件,可能是因为 freetype 库未安装或者版本不匹配所引起的。 针对 MPC 头文件丢失 (`mpc.h`) 这样的情况,可以通过安装相应的开发包来解决。具体操作为执行命令 `sudo apt-get install libmpc-dev` 来获取并安装 MPC 库及其依赖项[^4]。 另外,在 VSCode 终端里尝试重新构建项目也是一种常见做法。进入项目的 build 目录下运行 CMake 和 Make 命令可以帮助完成整个工程的配置与编译工作: ```bash cd rci_client/build/ cmake .. make ``` 以上步骤有助于排除因环境设置不当而导致的各种潜在问题[^3]。 #### 关于 Freetype 错误的具体处理方式 对于 imx6ull 开发板上发生的字符驱动编译失败,并伴有 freetype 相关提示的情形,建议先确保所有必要的字体渲染库已正确安装。这通常涉及到 freetype 及其关联组件的部署。由于不同发行版之间可能存在差异,因此最好参照官方文档或社区指南来进行相应调整[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值