0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于rk平台快速移植ubuntu系统

jf_44130326 来源:Linux1024 2026-01-30 17:53 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

基于rk平台快速移植ubuntu系统
一、资料准备:
1、rk linux sdk
2、Ubuntu镜像源吗
二、sdk获取
Rk官方拉取,或者网上搜一下,看有没有人分享,如有需要可私。官方源码一般是比较大的,因为repo管理了整个工程,所有记录都有。
三、ubuntu镜像源码获取
官方路径:http://cdimage.ubuntu.com/ubuntu-base/releases/
进入该网站,可以下载自己需要的版本
版本源码说明,官方源码是一个基础源码,基本功能是有了,需要定制组件,以及添加rk的硬件支持,才能正常运行工作。具体细节可以好好探索。
四、系统镜像构建
在移植之前,可以进行一次构建,添加相关基础组件,因为组件需要在网上下载,把固定的先编译出来,避免重复编译消耗过多时间,这样可以节省我们的开发时间。基本的构建框架和指令如下:
sudo tar -xzf ubuntu-base-20.04.5-base-arm64.tar.gz -C binary/cat<<EOF| sudo chroot $TARGET_ROOTFS_DIR/#再这里添加需要的组件EOFDATE=$(date+%Y%m%d)echo-e"�33[47;36m Run tar pack ubuntu-base-$TARGET-$ARCH-$DATE.tar.gz �33[0m"sudo tar zcf ubuntu-base-$TARGET-$ARCH-$DATE.tar.gz$TARGET_ROOTFS_DIR
经过上述流程,可以构建出ubuntu-base-xfce-full-arm64-20240906.tar.gz格式的文件,该文件已经包含了你自己需要的组件,接下来我们在这个基础上去构建就可以。
五、如何添加rk硬件支持
以下图片为rk官方适配第三方平台所需要适配的。wKgZPGkanu2AbruOAAD9DEW_XAQ834.png
sudorm-rf$TARGET_ROOTFS_DIRsudo tar -xpf ubuntu-base-$TARGET-$ARCH-*.tar.gzsudomkdir-p$TARGET_ROOTFS_DIR/vendor/etc# packages foldersudo mkdir -p $TARGET_ROOTFS_DIR/packagessudo cp -rpf packages/$ARCH/* $TARGET_ROOTFS_DIR/packagesecho -e "�33[47;36m Extract image1 �33[0m"#GPU/CAMERA packages folderinstall_packagessudo mkdir -p $TARGET_ROOTFS_DIR/packages/install_packagessudo cp -rpf packages/$ARCH/libmali/libmali-*$MALI*-x11*.deb $TARGET_ROOTFS_DIR/packages/install_packages# sudo cp -rpf ../ubuntu/packages/$ARCH/${ISP5}/camera_engine_$ISP*.deb $TARGET_ROOTFS_DIR/packages/install_packagesecho -e "�33[47;36m Extract image2 �33[0m"# overlay foldersudo cp -rpf overlay/* $TARGET_ROOTFS_DIR/# sudo cp -rpf sources.list $TARGET_ROOTFS_DIR/etc/apt/# overlay-firmware foldersudo cp -rpf overlay-firmware/* $TARGET_ROOTFS_DIR/echo -e "�33[47;36m Extract image3 �33[0m"# overlay-debug folder# adb, video, camera test fileif ["$VERSION" == "debug" ];thensudo cp -rpf overlay-debug/* $TARGET_ROOTFS_DIR/fiID=$(stat --format %u $TARGET_ROOTFS_DIR)cat << EOF| sudo chroot $TARGET_ROOTFS_DIR#在这里构建自己的组件# Create Useruseradd -G sudo -m -s /bin/bash Linux1024passwd Linux1024 <xieshancaixieshancaiIEOFgpasswd -a Linux1024 videogpasswd -a Linux1024 audiopasswd root <xieshancaixieshancaiIEOFEOF

上述代码基本上已经包含了rk的硬件加速,在重新构建系统就可以
六、如何添加进源码中
在获取了基础镜像系统之后,可按照以下步骤添加进系统:
1、根目录下找到debian,把镜像系统放到目录下
2、做两个编译脚本mk-base-ubuntu.sh、mk-ubuntu-rootfs.sh,这两个编译脚本对应第四、第五点,具体脚本可以参考debian系统构建脚本mk-base-debian.sh、mk-rootfs-bullseye.shwKgZPGkanu2AMKbDAACsVUKzEK0565.png  七、编译
准备好了上述步骤之后,加上以下patch,就可以使用原来的编译指令执行一键编译wKgZPGkanu2AA-DUAAFgj_3sKxs994.png可能有人会有疑问,不可以单独整个文件系统烧录吗?答案是可以的,但是可能会有问题,导致系统起不来,因为在上述构建之后还会加上wifi的补丁,这是在源码编译的时候打进去的。
按照上述方法去做,应该会得到一个完整的镜像,初次接触可能调试过程还是会有点问题,自己细心找一下就可以了。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 移植
    +关注

    关注

    1

    文章

    417

    浏览量

    29534
  • 源码
    +关注

    关注

    8

    文章

    689

    浏览量

    31512
  • Ubuntu
    +关注

    关注

    5

    文章

    617

    浏览量

    33670
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    干货分享 | RK3588 Ubuntu系统Docker容器使用指南

    前言:在瑞芯微RK3588高性能AIoT平台上运行Ubuntu系统时,Docker容器技术能极大提升开发部署效率。通过轻量级虚拟化实现环境隔离与快速
    的头像 发表于 06-27 12:01 4201次阅读
    干货分享 | <b class='flag-5'>RK</b>3588 <b class='flag-5'>Ubuntu</b><b class='flag-5'>系统</b>Docker容器使用指南

    RK3399如何选择系统 Android/debian/ubuntu/buildroot

    ,可移植性高。 2. Fedora 优点: 桌面操作系统,大部分人很熟悉,容易上手。源丰富,开源库可以rpm直接安装,不需要重新移植。也支持python。 缺点: 官方对ARM支持并不友好,对硬件
    发表于 02-17 10:13

    如何在Firefly-RK3399上编译和移植Linux内核和Ubuntu16.04 rootfs?

    Firefly-RK3399移植Ubuntu16.04的过程是怎样的?如何在Firefly-RK3399上编译和移植Linux内核和
    发表于 03-07 07:13

    如何实现UbuntuRK平台上的移植以及AP配网?

    如何实现UbuntuRK平台上的移植以及AP配网?
    发表于 03-09 07:04

    RK3288移植Ubuntu文件系统的过程是怎么样的?

    RK3288移植Ubuntu文件系统的过程是怎么样的?
    发表于 03-10 06:50

    移植Ubuntu16.04系统到ROC-RK3308-CC板子上记录

    的轻量级的Linux操作系统。笔者这里小试了下,移植Ubuntu16.04系统到ROC-RK3308-CC板子上,并记录在此。首先,更新SD
    发表于 06-09 16:58

    RK3399开发板在Ubuntu系统下实现双屏显示及异触

    本文以飞凌嵌入式RK3399开发板为基础讲解,主要介绍了Ubuntu系统下双屏显示及异触,其它RK3399平台请参考使用!
    发表于 03-30 14:01 2271次阅读

    AM5708平台移植ubuntu系统和docker容器

    AM5708平台移植ubuntu系统和docker容器
    发表于 11-01 08:26 2次下载
    AM5708<b class='flag-5'>平台</b><b class='flag-5'>移植</b><b class='flag-5'>ubuntu</b><b class='flag-5'>系统</b>和docker容器

    AM5708平台移植ubuntu系统和docker容器

    本文介绍如何在AM5708 EVM板子上移植ubuntu系统并把docker跑起来。
    的头像 发表于 03-31 10:33 1946次阅读
    AM5708<b class='flag-5'>平台</b><b class='flag-5'>移植</b><b class='flag-5'>ubuntu</b><b class='flag-5'>系统</b>和docker容器

    rk3288移植ubuntu

    rk3288是一款由瑞芯微推出的高性能ARM处理器,被广泛应用于嵌入式设备和单板计算机中。本文将介绍如何将Ubuntu操作系统移植rk32
    的头像 发表于 01-09 10:59 3878次阅读

    Ubuntu系统快速上手

    Ubuntu系统快速上手概述和操作说明
    的头像 发表于 04-12 16:25 1554次阅读
    <b class='flag-5'>Ubuntu</b><b class='flag-5'>系统</b><b class='flag-5'>快速</b>上手

    系统适配 | RK3588适配Ubuntu20.04发布预告

    前言:为了满足广大开发者与嵌入式爱好者的需求!眺望电子正式宣布,已完成基于瑞芯微RK3588的开发板对Ubuntu20.04LTS操作系统的深度适配与优化。此次适配不仅成功移植
    的头像 发表于 06-19 08:32 2087次阅读
    <b class='flag-5'>系统</b>适配 | <b class='flag-5'>RK</b>3588适配<b class='flag-5'>Ubuntu</b>20.04发布预告

    系统适配 | RK3576适配Ubuntu20.04正式发布

    前言:为了满足广大开发者与嵌入式爱好者的需求!眺望电子正式宣布,已完成基于瑞芯微RK3576的开发板对Ubuntu20.04LTS操作系统的深度适配与优化。此次适配不仅成功移植
    的头像 发表于 07-31 08:32 2307次阅读
    <b class='flag-5'>系统</b>适配 | <b class='flag-5'>RK</b>3576适配<b class='flag-5'>Ubuntu</b>20.04正式发布

    系统适配 | RK3588 Ubuntu22.04正式发布

    前言:为了满足广大开发者与嵌入式爱好者的需求!眺望电子正式宣布,已完成基于瑞芯微RK3588的开发板对Ubuntu22.04LTS操作系统的深度适配与优化。此次适配不仅成功移植
    的头像 发表于 09-05 12:06 2525次阅读
    <b class='flag-5'>系统</b>适配 | <b class='flag-5'>RK</b>3588 <b class='flag-5'>Ubuntu</b>22.04正式发布

    Ubuntu 25升级全解析!即将移植RK系列芯片,技术实践抢先预告

    性能、开发工具等维度实现了全方位突破。更重磅的是 —— 我已启动将 Ubuntu 25 移植RK 系列芯片的计划,后续会持续分享实践细节,各位敬请期待!
    的头像 发表于 02-06 17:07 3517次阅读
    <b class='flag-5'>Ubuntu</b> 25升级全解析!即将<b class='flag-5'>移植</b><b class='flag-5'>RK</b>系列芯片,技术实践抢先预告