RK3506 ubuntu22.04系统编译

RK3506 ubuntu22.04系统编译

为了确保SDK每次更新都能顺利进行,建议在更新前清理之前的编译产物。这样做可以避免潜在的兼容性问 题或编译错误,因为旧的编译产物可能不适用于新版本的SDK。要清理这些编译产物,可以直接运行命令 ./build.sh cleanall。

配置

bash 复制代码
huiwei@hwserver:/mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0$ ./build.sh rockchip_rk3506_b_emmc_ubuntu_defconfig

############### Rockchip Linux SDK ###############

Manifest: rk3506_linux6.1_release_v1.2.0_20250310.xml

Log colors: message notice warning error fatal

Log saved at /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/output/sessions/2026-05-27_10-29-25
Switching to defconfig: /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/device/rockchip/.chip/rockchip_rk3506_b_emmc_ubuntu_defconfig
#
# configuration written to /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/output/.config
#
Using last kernel version(6.1)
huiwei@hwserver:/mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0$

编译

bash 复制代码
huiwei@hwserver:/mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0$ ./build.sh

############### Rockchip Linux SDK ###############

Manifest: rk3506_linux6.1_release_v1.2.0_20250310.xml

Log colors: message notice warning error fatal

Log saved at /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/output/sessions/2026-05-27_10-31-05
Using last kernel version(6.1)

==========================================
          Final configs
==========================================
RK_BOOT_COMPRESSED=y
RK_BOOT_FIT_ITS=/mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/device/rockchip/.chip/zboot.its

... ...

自动一键 编译 u-boot ,kernel,这里 只 讨论ubuntu 相关,自动编译 内核模块和头文件 等等,利用SDK 中的钩子函数。

bash 复制代码
Running mk-kernel.sh - build_kernel succeeded.
==========================================
          Start building rootfs(ubuntu)
==========================================
==========================================
          Start building jammy(armhf)
==========================================
[    Already Exists IMG,  Skip Make Ubuntu Scripts    ]
[ Delate ubuntu-rk3506-lite-rootfs.img To Rebuild Ubuntu IMG ]
Making rootfs!
Executing post-build.sh...
Adding build-info to /etc/os-release...
Fixing up /etc/fstab...
Fixing up rootfs type: auto
Adding dirs and links...
Executing post-build.sh...

############### Rockchip Linux SDK ###############

Manifest: rk3506_linux6.1_release_v1.2.0_20250310.xml

Log colors: message notice warning error fatal

Running within sudo(root) environment!

Using last kernel version(6.1)
Running 00-wifibt.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Building Wifi/BT module and firmwares...
Skipping 00-wifibt.sh - build_wifibt for missing configs:  RK_WIFIBT RK_WIFIBT_MODULES.
Running 01-hostname.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Keep original hostname for ubuntu by default
Running 05-udev.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Running 06-async-commit.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Running 07-log-guardian.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Running 09-disk.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Installing resize service...
Running 10-os-release.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Keep original hostname for ubuntu by default
Running 20-info.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Running 30-fstab.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Keep original hostname for ubuntu by default
Running 40-busybox-reboot.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Running 50-locale.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Keep original locale for ubuntu by default
Running 60-mount-dirs.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Adding dirs and links...
Running 90-overlay.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Running 91-modules.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Installing kernel modules...
Using kernel version(6.1) from environment
Toolchain for kernel:
/mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/prebuilts/gcc/linux-x86/arm/gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf-

==========================================
          Start building modules
==========================================
+ sudo -u #1000 make -C /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/kernel/ -j21 CROSS_COMPILE=/mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/prebuilts/gcc/linux-x86/arm/gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf- ARCH=arm rockchip_rk3506b_emmc_defconfig rk3506-display.config rk3506-usb-otg.config
make: Entering directory '/mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/kernel-6.1'
#
# No change to .config
#
Using .config as base
Merging ./arch/arm/configs/rk3506-display.config
Value of CONFIG_MEDIA_ANALOG_TV_SUPPORT is redefined by fragment ./arch/arm/configs/rk3506-display.config:
Previous value: CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
New value: # CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set

Value of CONFIG_MEDIA_DIGITAL_TV_SUPPORT is redefined by fragment ./arch/arm/configs/rk3506-display.config:
Previous value: CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
New value: # CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set

Value of CONFIG_MEDIA_RADIO_SUPPORT is redefined by fragment ./arch/arm/configs/rk3506-display.config:
Previous value: CONFIG_MEDIA_RADIO_SUPPORT=y
New value: # CONFIG_MEDIA_RADIO_SUPPORT is not set

Value of CONFIG_MEDIA_SDR_SUPPORT is redefined by fragment ./arch/arm/configs/rk3506-display.config:
Previous value: CONFIG_MEDIA_SDR_SUPPORT=y
New value: # CONFIG_MEDIA_SDR_SUPPORT is not set

Value of CONFIG_MEDIA_TEST_SUPPORT is redefined by fragment ./arch/arm/configs/rk3506-display.config:
Previous value: CONFIG_MEDIA_TEST_SUPPORT=y
New value: # CONFIG_MEDIA_TEST_SUPPORT is not set

Value of CONFIG_VIDEOBUF2_DMA_SG is redefined by fragment ./arch/arm/configs/rk3506-display.config:
Previous value: CONFIG_VIDEOBUF2_DMA_SG=y
New value: # CONFIG_VIDEOBUF2_DMA_SG is not set

#
# merged configuration written to .config (needs make)
#
.config:5804:warning: override: reassigning to symbol MEDIA_SUPPORT_FILTER
#
# configuration written to .config
#
Using .config as base
Merging ./arch/arm/configs/rk3506-usb-otg.config
#
# merged configuration written to .config (needs make)
#
#
# configuration written to .config
#
make: Leaving directory '/mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/kernel-6.1'
+ sudo -u #1000 make -C /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/kernel/ -j21 CROSS_COMPILE=/mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/prebuilts/gcc/linux-x86/arm/gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf- ARCH=arm modules
make: Entering directory '/mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/kernel-6.1'
  SYNC    include/config/auto.conf.cmd
  CALL    scripts/checksyscalls.sh
make[6]: warning: -j20 forced in makefile: resetting jobserver mode.
make[7]: warning: -j20 forced in makefile: resetting jobserver mode.
make: Leaving directory '/mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/kernel-6.1'
+ sudo -u #1000 make -C /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/kernel/ -j21 CROSS_COMPILE=/mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/prebuilts/gcc/linux-x86/arm/gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf- ARCH=arm modules_install INSTALL_MOD_PATH=/mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary/
make: Entering directory '/mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/kernel-6.1'
  INSTALL /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary//lib/modules/6.1.118/kernel/crypto/drbg.ko
  INSTALL /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary//lib/modules/6.1.118/kernel/crypto/ecc.ko
  INSTALL /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary//lib/modules/6.1.118/kernel/crypto/ecdh_generic.ko
  INSTALL /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary//lib/modules/6.1.118/kernel/crypto/hmac.ko
  INSTALL /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary//lib/modules/6.1.118/kernel/crypto/jitterentropy_rng.ko
  INSTALL /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary//lib/modules/6.1.118/kernel/crypto/sha512_generic.ko
  INSTALL /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary//lib/modules/6.1.118/kernel/drivers/bluetooth/btintel.ko
  INSTALL /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary//lib/modules/6.1.118/kernel/drivers/bluetooth/btrtl.ko
  INSTALL 

ubuntu 编译完成

bash 复制代码
Running 99-owner.sh for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary (ubuntu init=systemd)...
Fixing up owner for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/output...
Fixing up owner for /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/ubuntu22.04/binary...
Fixing up uid=huiwei(1000) to 0(root)...
Running build.sh - post-rootfs succeeded.
Executing add-build-info.sh...
Adding build-info to /etc/os-release...
mke2fs 1.47.0 (5-Feb-2023)
Creating regular file ubuntu-rk3506-lite-rootfs.img_new
Creating filesystem with 284928 4k blocks and 71280 inodes
Filesystem UUID: cc45092b-aaa1-4430-a9a4-1425c82e95d7
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376

Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Copying files into the device: done
Writing superblocks and filesystem accounting information: done

Rootfs Image: ubuntu-rk3506-lite-rootfs.img
Running mk-rootfs.sh - build_ubuntu /mnt/Code/rk3506/rk3506_linux6.1_sdk_v1.2.0/output/ubuntu/images succeeded.
Running mk-rootfs.sh - build_rootfs succeeded.

然后 就是 编译 recovery 后 自动打包的过程。。。。。

启动后 显示系统信息

相关推荐
HAPPY酷2 小时前
【ROS2】 Conda 环境搭建(命令行版)
linux·运维·python·ubuntu·机器人·conda
Tronlong创龙9 小时前
TL3588 工控单板 ROS2 开发实战:交叉编译、机器人通信与功能包部署全流程
机器人·开发板·嵌入式开发·硬件开发·工业控制·工业开发板
Tronlong创龙20 小时前
SBC-TL3588 单板机 / EPC-TL3588 工控机 Docker 开发手册(二)
docker·开发板·嵌入式开发·硬件开发·工业控制
醉熏的石头1 天前
Ubuntu 中的编程语言(中)
linux·ubuntu·scala
bukeyiwanshui1 天前
20260622 安装配置ubuntu
linux·运维·ubuntu
AI的探索之旅1 天前
从 Ubuntu 14.04 到 24.04:TI AM335x 开发环境完整迁移与 Agent 接管方案
linux·数据库·嵌入式硬件·ubuntu·postgresql
一池秋_1 天前
ubuntu(linux)完美复刻windows11字体,解决linux字体费眼晴
linux·运维·ubuntu
艾莉丝努力练剑2 天前
OpenCode AI 编程:Ubuntu 24.04 环境安装与使用指南
linux·服务器·网络·人工智能·tcp/ip·ubuntu
Tian_Hang2 天前
Eclipse Ditto 的权限策略
java·服务器·前端·网络·ide·ubuntu·eclipse
一杯奶茶¥2 天前
Ubuntu系统镜像各个版本下载Ubuntu镜像合集资源Linux系统镜像乌班图Linux系统镜像
linux·运维·ubuntu·镜像·;inux镜像·ubuntu镜像