Buildroot
环境准备
需要准备一台 Ubuntu 20.04/22.04 x86_64 主机。
也可以使用虚拟主机
- ubuntu-22.04.5-live-server-amd64 虚拟主机,带 120G 硬盘容量。
安装编译依赖包
sudo apt update
sudo apt install python2 git rsync gcc g++ make device-tree-compiler bc flex bison lz4 libssl-dev libgmp-dev libmpc-dev expect expect-dev file unzip bzip2 fakeroot bsdmainutils
sudo ln -s /bin/python2 /bin/python
获取 Rockchip 原始 SDK
- Mega:https://mega.nz/file/JugCGDDC#NNL5_qRDRr-NL6TS3F1FSzkoXFwRCwDTNTW3KAiTtpI
- 百度网盘:https://pan.baidu.com/s/12rQmYaRMKwgz8cOBNjc4yQ?pwd=35mj
解压 SDK
在 Ubuntu PC 上,使用如下命令解压 SDK。
tar xvf rk356x_linux5.10_rkr8_sdk.repo.tar
.repo/repo/repo sync -l
添加板子 Zero 3E 板子支持
使用 Radxa 维护的 rockchip 仓库。
cd device/rockchip
git remote add radxa https://github.com/radxa/device-rockchip.git
git fetch radxa
git checkout -b rk3566_rk3568-linux-5.10 remotes/radxa/rk3566_rk3568-linux-5.10
使用 Radxa 维护的 kernel 仓 库。
cd kernel
git remote add radxa https://github.com/radxa/kernel.git
git fetch radxa
git checkout -b linux-5.10-gen-rkr8-buildroot remotes/radxa/linux-5.10-gen-rkr8-buildroot
构建 SDK
在 SDK 的顶层目录,执行命令:
./build.sh
然后选中配置文件 rockchip_rk3566_radxa_zero_3e_defconfig
。
构建完成后,将会在 rockdev/
目录下生成镜像。
使用 SDDiskTool 将生成的镜像烧录到 SDCard 中
SDDiskTool 是瑞芯微官方的 SD 卡烧录工具。
-
下载 SDDiskTool
-
SDDiskTool 目前只有 Windows 版本,所以请在 Windows 电脑下操作。
-
-
烧录 SD 卡
-
我们需要烧录相对应的 RK 格式的完整镜像。
-
RK 格式的完整镜像指使用 Rockchip 基于 Buildroot 发布的一系列 Linux SDK 所编译出的
update.img
镜像 -
打开 SDDiskTool 的可执行文件 SD_Firmware_Tool.exe,插入 SD 卡。
注意插入多个存储设备时,请确认好要烧录的 SD 卡,否则将导致其他存储设备被覆盖。
-
可移动磁盘设备选择要烧录的 SD 卡,功能模式选择 SD 启动,升级固件要是 RK 格式的完整镜像,最后点击开始创建烧录镜像。
-
烧录过程请耐心等待,镜像分区很多,如果镜像很大,烧录时间会较长。
-
在烧录时,如果遇到清空 MBR 的问题,需要把 SD 卡磁盘标签类型从 dos 改为 gpt
- Windows
- Linux
-
windows 下使用命令提示符删除所有分区并转换为 gpt
-
按 Win + X,选择 Windows Terminal(管理员) 或 命令提示符(管理员)。
-
输入以下命令并按回车:
diskpart
-
然后,输入以下命令来列出所有磁盘:
list disk
-
找到你的 SD 卡(假设它是磁盘 3),输入:
select disk 1
- (如果你的 SD 卡是其他磁盘号,请相应修改 3 为正确的数字。)
-
清除磁盘上的所有分区:
clean
- (这将删 除 SD 卡上的所有分区和数据。)
-
转换磁盘为 GPT 格式:
convert gpt
-
输入 exit 退出 diskpart 工具。
-
-
Linux 下用 fdisk 命令将标签格式改为 gpt
-
找到你的 SD 卡(假设它是 /dev/sdb ),输入:
sudo fdisk /dev/sdb
-
输入
p
,会显示当前磁盘的标签格式及分区 -
接着输入
g
将磁盘转换为 gpt 格式 -
然后输入
wq
保存退出即可
-