rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$ ll
rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$ ll *sh
lrwxrwxrwx 1 rootroot rootroot 39 3月 8 2025 build.sh -> device/rockchip/common/scripts/build.sh*
lrwxrwxrwx 1 rootroot rootroot 41 3月 8 2025 rkflash.sh -> device/rockchip/common/scripts/rkflash.sh*
rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$
rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$ ./build.sh lunch
3. rockchip_rk3576_evb1_v10_defconfig
Which would you like? [1]: 3
rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$ ./build.sh
20260127编译Rockchip瑞芯微原厂的Buildroot【linux-6.1内核】
2026/1/27 15:59
缘起:从 海鲜市场 拿到了一份 Rockchip瑞芯微原厂RK3576的Buildroot【linux-6.1内核】,编译它!
让天启AIO-3576Q38开发板跑Rockchip瑞芯微原厂的Buildroot【linux-6.1内核】。
为了简单起见,直接【使用天启Firefly的DTS】
原始编译的也可以启动的,就是没有HDMI显示,其它全部的模块都不能用而已!^_
当你把荣品RD-RK3588开发板重新适配一把,就相当于从头做了一个项目:【荣品RD-RK3588开发板】。
当然,开发板的功能都是好的,你免除了调试的过程,也就没有解决相关硬件出错的经验/机会了!
1、编译步骤:
rootroot@rootroot-X99-Turbo:~$
rootroot@rootroot-X99-Turbo:~$
rootroot@rootroot-X99-Turbo:~$ cd proj/
rootroot@rootroot-X99-Turbo:~/proj$
rootroot@rootroot-X99-Turbo:~/proj$ ll
total 50781924
drwx------ 6 rootroot rootroot 4096 1月 27 10:10 ./
drwxr-xr-x 52 rootroot rootroot 12288 1月 27 15:24 ../
-rw-rw-r-- 1 rootroot rootroot 34091570465 10月 23 15:55 firefly_rk3576_android14.0_git_20241126天启RK3576_Android14.0orig原始打包20251023_1555.tgz
drwxrwxr-x 14 rootroot rootroot 4096 1月 27 12:06 Firefly_SDK4patch/
-rwx------ 1 rootroot rootroot 5849876263 10月 24 11:58 Firefly_SDK_buildrootQ38_20251024_1157原始整合4patch无dl.tgz*
drwxrwxr-- 8 rootroot rootroot 4096 1月 27 15:23 .git/
-rw-rw-r-- 1 rootroot rootroot 12059171718 1月 20 15:36 git_RK3576_Linux6.1_20251023_1533原始打包.tgz
-rwx------ 1 rootroot rootroot 1114 10月 23 15:11 md5sum.txt*
drwxrwxr-- 18 rootroot rootroot 4096 1月 20 15:28 RK3576_Linux6.1/
drwxrwxr-x 19 rootroot rootroot 4096 1月 20 15:50 编译异常了git_RK3576_Linux6.1/
rootroot@rootroot-X99-Turbo:~/proj$
rootroot@rootroot-X99-Turbo:~/proj$
rootroot@rootroot-X99-Turbo:~/proj$ cd RK3576_Linux6.1/
rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$
rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$ ll
total 100
-rwxrwxr-- 1 rootroot rootroot 0 3月 8 2025 ''$'\001\320'*
drwxrwxr-- 18 rootroot rootroot 4096 1月 20 15:28 ./
drwx------ 6 rootroot rootroot 4096 1月 27 10:10 ../
drwxrwxr-- 7 rootroot rootroot 4096 3月 8 2025 app/
drwxrwxr-- 18 rootroot rootroot 4096 3月 20 2025 buildroot/
lrwxrwxrwx 1 rootroot rootroot 39 3月 8 2025 build.sh -> device/rockchip/common/scripts/build.sh*
lrwxrwxrwx 1 rootroot rootroot 22 3月 8 2025 common -> device/rockchip/common/
lrwxrwxrwx 1 rootroot rootroot 21 3月 8 2025 Copyright_Statement.md -> docs/licenses/LICENSE*
drwxrwxr-- 10 rootroot rootroot 4096 3月 20 2025 debian/
drwxrwxr-- 3 rootroot rootroot 4096 3月 8 2025 device/
drwxrwxr-- 7 rootroot rootroot 4096 3月 20 2025 docs/
drwxrwxr-- 34 rootroot rootroot 4096 3月 8 2025 external/
-rwxrwxr-- 1 rootroot rootroot 1944 3月 20 2025 .gitignore*
drwxrwxr-- 10 rootroot rootroot 4096 3月 20 2025 hal/
lrwxrwxrwx 1 rootroot rootroot 10 3月 8 2025 kernel -> kernel-6.1/
drwxrwxr-- 26 rootroot rootroot 4096 3月 20 2025 kernel-6.1/
drwxrwxr-- 11 rootroot rootroot 4096 3月 20 2025 live-build/
lrwxrwxrwx 1 rootroot rootroot 31 3月 8 2025 Makefile -> device/rockchip/common/Makefile*
drwxrwxr-- 3 rootroot rootroot 4096 3月 8 2025 prebuilts/
lrwxrwxrwx 1 rootroot rootroot 32 3月 8 2025 README.md -> device/rockchip/common/README.md*
drwxrwxr-- 10 rootroot rootroot 4096 3月 20 2025 repo/
drwxrwxr-- 9 rootroot rootroot 4096 3月 20 2025 rkbin/
lrwxrwxrwx 1 rootroot rootroot 41 3月 8 2025 rkflash.sh -> device/rockchip/common/scripts/rkflash.sh*
drwxrwxr-- 14 rootroot rootroot 4096 3月 20 2025 rtos/
-rwxrwxr-- 1 rootroot rootroot 20928 11月 11 2024 szsqykjyxgs_14088.x*
drwxrwxr-- 5 rootroot rootroot 4096 3月 20 2025 tools/
drwxrwxr-- 27 rootroot rootroot 4096 3月 20 2025 u-boot/
drwxrwxr-- 8 rootroot rootroot 4096 3月 8 2025 yocto/
rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$
rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$
rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$ ll *sh
lrwxrwxrwx 1 rootroot rootroot 39 3月 8 2025 build.sh -> device/rockchip/common/scripts/build.sh*
lrwxrwxrwx 1 rootroot rootroot 41 3月 8 2025 rkflash.sh -> device/rockchip/common/scripts/rkflash.sh*
rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$
rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$ ./build.sh lunch
Log colors: message notice warning error fatal
Log saved at /home/rootroot/proj/RK3576_Linux6.1/output/sessions/2026-01-27_15-56-47
Pick a defconfig:
1. rockchip_defconfig
2. rockchip_rk3576_evb1_v10_amp_defconfig
3. rockchip_rk3576_evb1_v10_defconfig
4. rockchip_rk3576_evb1_v10_mcu_defconfig
5. rockchip_rk3576_industry_evb_v10_defconfig
6. rockchip_rk3576_iotest_v10_defconfig
7. rockchip_rk3576_ipc_evb1_v10_defconfig
8. rockchip_rk3576_multi_ipc_evb1_v10_defconfig
9. rockchip_rk3576_test1_v10_defconfig
10. rockchip_rk3576_test2_v10_defconfig
11. rockchip_rk3576s_evb1_v10_defconfig
Which would you like? [1]: 3
Switching to defconfig: /home/rootroot/proj/RK3576_Linux6.1/device/rockchip/.chip/rockchip_rk3576_evb1_v10_defconfig
mkdir -p /home/rootroot/proj/RK3576_Linux6.1/output/kconf/lxdialog
make CC="gcc" HOSTCC="gcc" \
obj=/home/rootroot/proj/RK3576_Linux6.1/output/kconf -C /home/rootroot/proj/RK3576_Linux6.1/device/rockchip/common/kconfig -f Makefile.br conf
make[1]: Entering directory '/home/rootroot/proj/RK3576_Linux6.1/device/rockchip/common/kconfig'
gcc -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DCURSES_LOC="<ncurses.h>" -DNCURSES_WIDECHAR=1 -DLOCALE -I/home/rootroot/proj/RK3576_Linux6.1/output/kconf -DCONFIG_=\"\" -MM *.c > /home/rootroot/proj/RK3576_Linux6.1/output/kconf/.depend 2>/dev/null || :
gcc -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DCURSES_LOC="<ncurses.h>" -DNCURSES_WIDECHAR=1 -DLOCALE -I/home/rootroot/proj/RK3576_Linux6.1/output/kconf -DCONFIG_=\"\" -c conf.c -o /home/rootroot/proj/RK3576_Linux6.1/output/kconf/conf.o
gcc -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DCURSES_LOC="<ncurses.h>" -DNCURSES_WIDECHAR=1 -DLOCALE -I/home/rootroot/proj/RK3576_Linux6.1/output/kconf -DCONFIG_=\"\" -I. -c /home/rootroot/proj/RK3576_Linux6.1/output/kconf/zconf.tab.c -o /home/rootroot/proj/RK3576_Linux6.1/output/kconf/zconf.tab.o
gcc -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DCURSES_LOC="<ncurses.h>" -DNCURSES_WIDECHAR=1 -DLOCALE -I/home/rootroot/proj/RK3576_Linux6.1/output/kconf -DCONFIG_=\"\" /home/rootroot/proj/RK3576_Linux6.1/output/kconf/conf.o /home/rootroot/proj/RK3576_Linux6.1/output/kconf/zconf.tab.o -o /home/rootroot/proj/RK3576_Linux6.1/output/kconf/conf
rm /home/rootroot/proj/RK3576_Linux6.1/output/kconf/zconf.tab.c
make[1]: Leaving directory '/home/rootroot/proj/RK3576_Linux6.1/device/rockchip/common/kconfig'
#
# configuration written to /home/rootroot/proj/RK3576_Linux6.1/output/.config
#
Using current kernel version(6.1)
rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$
rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$ ./build.sh
2、编译出错:
LD [M] drivers/media/tuners/tuner-types.ko
LD [M] drivers/media/tuners/xc2028.ko
LD [M] drivers/media/tuners/xc4000.ko
LD [M] drivers/media/tuners/tda9887.ko
LD [M] drivers/media/tuners/tea5761.ko
LD [M] drivers/media/tuners/tda8290.ko
LD [M] drivers/media/tuners/tua9001.ko
LD [M] drivers/media/tuners/xc5000.ko
NM .tmp_vmlinux.kallsyms1.syms
KSYMS .tmp_vmlinux.kallsyms1.S
AS .tmp_vmlinux.kallsyms1.o
LD .tmp_vmlinux.kallsyms2
NM .tmp_vmlinux.kallsyms2.syms
KSYMS .tmp_vmlinux.kallsyms2.S
AS .tmp_vmlinux.kallsyms2.o
LD vmlinux
NM System.map
SORTTAB vmlinux
OBJCOPY arch/arm64/boot/Image
LZ4C arch/arm64/boot/Image.lz4
Image: resource.img (with rk3576-kiayo-k3576a.dtb logo.bmp logo_kernel.bmp) is ready
Image: boot.img (with Image resource.img) is ready
Image: zboot.img (with Image.lz4 resource.img) is ready
make: Leaving directory '/home/rootroot/proj/RK3576_Linux6.1/kernel-6.1'
+ /home/rootroot/proj/RK3576_Linux6.1/device/rockchip/common/scripts/mk-fitimage.sh kernel/boot.img /home/rootroot/proj/RK3576_Linux6.1/device/rockchip/.chip/boot.its kernel/arch/arm64/boot/Image kernel/arch/arm64/boot/dts/rockchip/rk3576-kiayo-k3576a.dtb kernel/resource.img
FIT description: U-Boot FIT source file for arm
Created: Tue Jan 27 16:07:59 2026
Image 0 (fdt)
Description: unavailable
Created: Tue Jan 27 16:07:59 2026
Type: Flat Device Tree
Compression: uncompressed
Data Size: 289455 Bytes = 282.67 KiB = 0.28 MiB
Architecture: AArch64
Load Address: 0xffffff00
Hash algo: sha256
Hash value: 4ae40ab7a311746f9149aad59de33210be334d774ad9ccaea1071d529aae3471
Image 1 (kernel)
Description: unavailable
Created: Tue Jan 27 16:07:59 2026
Type: Kernel Image
Compression: uncompressed
Data Size: 39635456 Bytes = 38706.50 KiB = 37.80 MiB
Architecture: AArch64
OS: Linux
Load Address: 0xffffff01
Entry Point: 0xffffff01
Hash algo: sha256
Hash value: d73798b453541e0078b212dc4175b19908a59f9b44296fc814ca23649476bf66
Image 2 (resource)
Description: unavailable
Created: Tue Jan 27 16:07:59 2026
Type: Multi-File Image
Compression: uncompressed
Data Size: 327680 Bytes = 320.00 KiB = 0.31 MiB
Hash algo: sha256
Hash value: ad404eac8c78a65518688334cb5493c56ff41274c9fd18d4aaf64764d1c1d81c
Default Configuration: 'conf'
Configuration 0 (conf)
Description: unavailable
Kernel: kernel
FDT: fdt
+ ln -rsf kernel/boot.img /home/rootroot/proj/RK3576_Linux6.1/output/firmware/boot.img
Not Found io-domains in kernel/arch/arm64/boot/dts/rockchip/rk3576-kiayo-k3576a.dts
Running mk-kernel.sh - build_kernel succeeded.
==========================================
Start building rootfs(debian)
==========================================
Your debootstrap is missing
Please install it:
sudo apt-get install debootstrap
ERROR: Running /home/rootroot/proj/RK3576_Linux6.1/device/rockchip/common/scripts/mk-rootfs.sh - build_debian failed!
ERROR: exit code 1 from line 194:
"$RK_SCRIPTS_DIR/check-debian.sh"
ERROR: call stack:
mk-rootfs.sh: build_debian(194)
mk-rootfs.sh: build_hook(354)
mk-rootfs.sh: main(410)
ERROR: Running /home/rootroot/proj/RK3576_Linux6.1/device/rockchip/common/build-hooks/99-all.sh - build_all failed!
ERROR: exit code 1 from line 21:
"$RK_SCRIPTS_DIR/mk-rootfs.sh"
ERROR: call stack:
99-all.sh: build_all(21)
99-all.sh: build_hook(136)
build-helper: try_func(63)
build-helper: try_hook(96)
build-helper: source(165)
99-all.sh: main(147)
ERROR: Running /home/rootroot/proj/RK3576_Linux6.1/device/rockchip/common/build-hooks/99-all.sh - try_func build_hook all failed!
ERROR: exit code 1 from line 67:
build_hook
ERROR: call stack:
build-helper: try_func(67)
build-helper: try_hook(96)
build-helper: source(165)
99-all.sh: main(147)
rootroot@rootroot-X99-Turbo:~/proj/RK3576_Linux6.1$
3、修改:
Z:\RK3576_Linux6.1\device\rockchip\.chips\rk3576\rockchip_rk3576_evb1_v10_defconfig
Z:\14TB\AIO-RK3576Q38\git_RK3576_Linux6.1\device\rockchip\.chips\rk3576\rockchip_rk3576_evb1_v10_defconfig
RK_ROOTFS_SYSTEM_DEBIAN=y
RK_UBOOT_SPL=y
RK_KERNEL_DTS_NAME="rk3576-kiayo-k3576a"
RK_USE_FIT_IMG=y
修改为:
【我编译buildroot不需要DEBIAN文件系统!】
RK_ROOTFS_SYSTEM_DEBIAN=n
RK_UBOOT_SPL=y
【需要使用正确的DTS文件】
RK_KERNEL_DTS_NAME="rk3576-evb1-v10-linux"
RK_USE_FIT_IMG=y
4、当然,接下来编译也可能会有其它错误,
建议直接析取.git目录的SDK,然后重新编译即可!
【这样获取的SDK干净/纯粹一点了!】