联系管理员

开通文章发布权限

扫码 添加微信
微信图片
电话: QQ:1602036736

rk3566 kernel6.1 ubuntu22 编译脚本

Ubuntu for TSPI-M1-RK3566 (Linux 6.1)

介绍

TSPI-1M-RK3566 开发板定制的 Ubuntu 22.04.5 LTS 系统,基于 Linux 6.1 内核。支持桌面版(xfce)和服务器版两种构建方式。

脚本下载

https://github.com/LaoGuaiGe/ubuntu22.04-rootfs/tree/rk3566-kernel6.1-ubuntu22.04-rootfs

软件架构

构建脚本关系图
├── clean-build.sh       # 清理构建环境
├── mk-base-ubuntu.sh    # 生成基础rootfs
├── mk-ubuntu-rootfs.sh  # 安装硬件驱动和软件包
├── mk-image.sh          # 生成可烧录镜像
├── ch-mount.sh          # 挂载/卸载工具
├── host_check.sh        # 检查宿主机环境依赖
├── post-build.sh        # 镜像后处理脚本
└── overlay/             # 文件系统覆盖层
    ├── etc/             # 系统配置
    ├── lib/             # 库文件
    └── usr/             # 用户程序

构建方式

方式一:通过 SDK 构建系统(推荐)

如果是第一次构建请先看完全文
# 切换到 SDK 根目录
cd /path/to/rk3566_rk3568_linux6.1_release

# 构建 ubuntu(桌面版)
./build.sh ubuntu

# 构建 ubuntu(服务器版)
RK_UBUNTU_SERVER=1 ./build.sh ubuntu

方式二:直接执行构建脚本

如果是第一次构建请先看完全文
# 切换到 ubuntu 目录
cd /path/to/rk3566_rk3568_linux6.1_release/ubuntu

# 桌面版
GUI=desktop ./mk-base-ubuntu.sh && \ 
GUI=desktop ./mk-ubuntu-rootfs.sh && \ 
./mk-image.sh

# 服务器版
GUI=console ./mk-base-ubuntu.sh && \ 
GUI=console ./mk-ubuntu-rootfs.sh && \ 
./mk-image.sh

环境要求

  • Ubuntu 22.04 LTS 主机环境

  • 网络环境确保正常

  • 存储空间:至少 50GB 可用空间

首次构建前准备

首次构建前需要在 Ubuntu 22.04 虚拟机中执行以下命令(一次性):

cd /path/to/rk3566_rk3568_linux6.1_release/ubuntu

sudo apt update && sudo apt full-upgrade && \ 
sudo ./host_check.sh && sudo pip3 install pyelftools && \ 
sudo ln -sf /usr/bin/python3 /usr/bin/python && \ 
sudo sed -i -e '/\%sudo/ c \%sudo ALL=(ALL) NOPASSWD: ALL' /etc/sudoers && \ 
sudo usermod -a -G sudo $USER && \ 
exec su - $USER
如果在运行时出现 sudo: ./host_check.sh:找不到命令,那就执行chmod +x host_check.sh

构建前准备事项

1. 内核 deb 包

构建前需要先编译内核,生成以下三个 deb 包并放到 SDK 根目录:

cd /path/to/rk3566_rk3568_linux6.1_release/kernel-6.1

make CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 LOCALVERSION="" bindeb-pkg -j$(nproc)

编译完成后会在 SDK 根目录生成:

  • linux-headers-6.1.141_6.1.141-1_arm64.deb

  • linux-image-6.1.141_6.1.141-1_arm64.deb

  • linux-libc-dev_6.1.141-1_arm64.deb

2. WiFi/BT 固件(可选)

如果需要支持 WiFi 和蓝牙,需要提前准备:

# 确保 rkwifibt 目录存在
cd /path/to/rk3566_rk3568_linux6.1_release
ls external/rkwifibt

构建输出

构建完成后会在 ubuntu 目录下生成:

  • ubuntu-jammy.img - 可直接烧录的镜像文件

  • binary/ - 未打包的 rootfs 目录

烧录时将 ubuntu-jammy.img 烧录到 rootfs 分区即可。

清理构建

# 通过 SDK 构建系统
./build.sh clean

# 或直接在 ubuntu 目录
cd ubuntu
sudo ./clean-build.sh

常见问题

1. 构建时缺少 deb 包

如果构建时提示缺少内核 deb 包,需要先编译内核:

cd kernel-6.1
make CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 \ 
LOCALVERSION="" \ 
bindeb-pkg -j$(nproc)

2. 宿主机依赖检查失败

确保已执行 host_check.sh:

cd ubuntu
sudo ./host_check.sh

3. 网络构建失败

确保构建机器网络畅通,可以访问 Ubuntu 官方源。

版本信息

  • Ubuntu: 22.04.5 LTS (Jammy)

  • Kernel: 6.1.x

  • 构建脚本: 基于 Rockchip SDK 适配

 

.repo/repo/repo sync -l -j88
# 然后手动克隆 ubuntu
git clone .repo/projects/ubuntu22.04-rootfs.git ubuntu

 

评论

快捷导航

把好文章收藏到微信

打开微信,扫码查看

关闭

还没有账号?立即注册