rk3588s的firfly的linux的sdk版本

张开发
2026/4/13 21:04:53 15 分钟阅读

分享文章

rk3588s的firfly的linux的sdk版本
1、SDK的解压和更新# 解压mkdir-p~/proj/rk3588_sdkcd~/proj/rk3588_sdkcatpath/to/rk3588_linux_release_20230114_v1.0.6c_0*|tar-xv# 导出数据.repo/repo/reposync-l#更新sdk数据例如编译ubuntu就会无法烧录因为SDK版本的问题cd~/proj/rk3588_sdk# 同步.repo/repo/reposync-c--no-tags .repo/repo/repo start firefly--all#导出数据.repo/repo/reposync-l2、烧录这个问题是没有使用root用户执行的结果切换root后烧录成功(sudo su)okay的图片#查看loader设备sudoupgrade_tool LD#重启loader设备 #在单独烧录的时候设备不会自动重新启动需要这条命令sudoupgrade_tool RD#烧写统一固件 update.imgsudoupgrade_tool uf update.img#如果升级失败可以尝试先擦除后再升级。# 擦除 flash 使用 ef 参数需要指定 loader 文件或者对应的 update.imgsudoupgrade_tool ef update.img#update.img :你需要烧写的 Ubuntu 固件# 重新烧写sudoupgrade_tool uf update.img 烧写分区镜像sudoupgrade_tool di-b/path/to/boot.imgsudoupgrade_tool di-r/path/to/recovery.imgsudoupgrade_tool di-m/path/to/misc.imgsudoupgrade_tool di-u/path/to/uboot.imgsudoupgrade_tool di-dtbo/path/to/dtbo.imgsudoupgrade_tool di-pparamater#烧写 parametersudoupgrade_tool ul bootloader.bin# 烧写 bootloader如果因 flash 问题导致升级时出错可以尝试低级格式化、擦除 emmcsudoupgrade_tool lf update.img# 低级格式化sudoupgrade_tool ef update.img# 擦除fastboot 烧写动态分区 adbrebootfastboot# 进入bootloadersudofastboot flash vendor vendor.imgsudofastboot flash system system.imgsudofastbootreboot# 烧写成功后,重启3、编译#编译 Ubuntu 固件#本教程的编译部分适用于 v1.0.6e 以上 SDK 版本$ readlink-f.repo/manifest.xml /home/daijh/p/rk3588/.repo/manifests/rk3588/rk3588_linux_release_20230301_v1.0.6e.xml#搭建编译环境sudoapt-getinstallrepogitsshmakegcc libssl-dev liblz4-tool\expectg patchelf chrpathgawktexinfo chrpath diffstat binfmt-support\qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g-multilib\unzip\device-tree-compiler ncurses-dev\#编译# 在 device/rockchip/rk3588/ 目录下有不同板型的配置文件选择配置文件./build.sh roc-rk3588s-pc-ubuntu.mk2.3.2.2. 编译2.3.2.2.1. 全自动编译 下载根文件系统Ubuntu 根文件系统(64位)放到 SDK 路径下# 这里没必要纠结aarch64的型号 对应的位置下载解压跟着做就Okay了我的当时 ubuntu-aarch64-rootfs.img 就是Ubuntu20.04-Gnome_RK3588_v2.40-1_20230414.img 7z x ubuntu-aarch64-rootfs.7zmkdirubuntu_rootfsmvubuntu-aarch64-rootfs.img ubuntu_rootfs/rootfs.img#开始编译./build.sh#生成的完整固件会保存到 rockdev/pack/ 目录。##部分编译#编译 u-boot./build.sh uboot#编译 kernel./build.sh extboot#编译 recovery./build.sh recovery#下载根文件系统Ubuntu 根文件系统(64位)放到 SDK 路径下# 这里没必要纠结aarch64的型号 对应的位置下载解压跟着做就Okay了#我的当时 ubuntu-aarch64-rootfs.img 就是Ubuntu20.04-Gnome_RK3588_v2.40-1_20230414.img7z x ubuntu-aarch64-rootfs.7zmkdirubuntu_rootfsmvubuntu-aarch64-rootfs.img ubuntu_rootfs/rootfs.img#更新各部分镜像链接到 rockdev/ 目录./mkfirmware.sh#打包固件生成的完整固件会保存到 rockdev/pack/ 目录。./build.sh updateimg注意当时我没有更新sdk一直没有编出update.img版本一直是20230114_v1.0.6c所以才做了上面的更新sdk版本操作一下就okay了刚开始我还以为是rootfs的问题但是更新了发现不是的 。如下是SDK更新之后的版本图4、验证查看sdk的kernel版本 是否烧录内更新#查看sdk的kernel版本ZZMZZM-PC:~/rk3588_linux/kernel$head.config-n10## Automatically generated file; DO NOT EDIT.# Linux/arm64 5.10.198 Kernel Configuration --------5.10#CONFIG_CC_VERSION_TEXTaarch64-none-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture 10.3-2021.07 (arm-10.29)) 10.3.1 20210621CONFIG_CC_IS_GCCyCONFIG_GCC_VERSION100301CONFIG_LD_VERSION236010000CONFIG_CLANG_VERSION0CONFIG_AS_IS_GNUy#有对应的设备的话 时间变化 编译的不同版本rootfirefly:~# uname -aLinux firefly5.10.198#3 SMP Sat Apr 11 10:51:36 CST 2026 aarch64 aarch64 aarch64 GNU/Linuxrootfirefly:~#5、制作rootfs.img的操作# 待续-----

更多文章