Welcome to Firefly
中文
Firefly文档中心
最近更新: 2026-11-05 07:40:56

编译 Linux 固件

获取 SDK

首先准备一个空文件夹用于存放 SDK,建议在 home 目录下,本文以~/proj为例

编译说明

注意:

1. SDK 采用交叉编译,所以要在 X86_64 电脑上使用 SDK,不要将 SDK 下载到板子上

2. 编译环境请使用 Ubuntu18.04(真机或 docker 容器),如果使用其他版本可能导致编译出错

3. 不要在虚拟机共享文件夹以及非英文目录存放、解压SDK

4. 获取、编译 SDK 请全程使用普通用户,不允许也不需要使用 root 权限(除非需要 apt 安装软件)

安装工具

获取 SDK 需要先安装:

sudo apt update
sudo apt install -y repo git python

初始化仓库

  • 方法一(推荐国内用户使用)

SDK 源码存放于 gitlab,国内用户可能下载完整的 SDK 仓库速度比较慢,所以我们提供了一个 SDK 基础包(Linux SDK),国内用户只需要在此基础包上同步 gitlab 上的代码就可以了

下载 SDK 基础包并且按照 README 文档操作:

└── rk3588_linux_release_xxx
    ├── linux_sdk_tar
    │   ├── rk3588_linux_release_xxx.sdk.split00
    │   ├── rk3588_linux_release_xxx.sdk.split01
    │   ├── rk3588_linux_release_xxx.sdk.split02
    │   ├── rk3588_linux_release_xxx.sdk.split03
    ├── md5sum.txt
    ├── README_EN.txt
    ├── README_ZH.txt
    └── sdk_tools.sh
  • 方法二

通过 repo 拉取代码,此方法对网络要求较高,有条件可以使用

可选择获取完整 SDK 或者 BSP:

mkdir ~/proj/rk3588_sdk/
cd ~/proj/rk3588_sdk/

## 完整 SDK
repo init --no-clone-bundle --repo-url https://github.com/Firefly-rk-linux-utils/git-repo.git --no-repo-verify -u https://github.com/Firefly-rk-linux/manifests.git -b master -m rk3588_linux_release.xml

## BSP ( 只包含基础仓库和编译工具只适合编译 ubuntu、debian 固件)
## BSP 包括 device/rockchip 、docs 、 kernel 、 u-boot 、 rkbin 、 tools 和交叉编译链
repo init --no-clone-bundle --repo-url https://github.com/Firefly-rk-linux-utils/git-repo.git --no-repo-verify -u https://github.com/Firefly-rk-linux/manifests.git -b master -m rk3588_linux_bsp_release.xml

同步代码

执行如下命令同步代码:

# 进入 SDK 根目录
cd ~/proj/rk3588_sdk

# 同步
.repo/repo/repo sync -c --no-tags
.repo/repo/repo start firefly --all

后续可以使用以下命令更新 SDK:

.repo/repo/repo sync -c --no-tags

因为网络环境等原因,.repo/repo/repo sync -c --no-tags 命令更新代码可能会失败,可多次反复执行。

Linux SDK 配置介绍

编译固件

编译 Ubuntu 固件

本章介绍 Ubuntu 固件的编译流程,推荐在 Ubuntu 18.04 系统环境下进行开发,若使用其它系统版本,可能需要对编译环境做相应调整。

本教程的编译部分适用于 v1.0.6e 以上 SDK 版本
$ readlink -f .repo/manifest.xml
/home/daijh/p/rk3588/.repo/manifests/rk3588/rk3588_linux_release_20230301_v1.0.6e.xml

准备工作

搭建编译环境

sudo apt-get install repo git ssh make gcc libssl-dev liblz4-tool \
expect g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support \
qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g++-multilib \
unzip \
device-tree-compiler ncurses-dev \

编译 SDK

编译前配置

在 device/rockchip/rk3588/ 目录下,有不同板型的配置文件,选择配置文件:

./build.sh aio-3588sjd4-ubuntu.mk 

编译

全自动编译
7z x ubuntu-aarch64-rootfs.7z
mkdir ubuntu_rootfs
mv ubuntu-aarch64-rootfs.img ubuntu_rootfs/rootfs.img
  • 开始编译
./build.sh

生成的完整固件会保存到 rockdev/pack/ 目录。

部分编译
  • 编译 u-boot
./build.sh uboot
  • 编译 kernel
./build.sh extboot
  • 编译 recovery
./build.sh recovery
7z x ubuntu-aarch64-rootfs.7z
mkdir ubuntu_rootfs
mv ubuntu-aarch64-rootfs.img ubuntu_rootfs/rootfs.img
  • 更新各部分镜像链接到 rockdev/ 目录:
./mkfirmware.sh
  • 打包固件,生成的完整固件会保存到 rockdev/pack/ 目录。
./build.sh updateimg

编译 Yocto 固件

获取SDK

repo init --no-clone-bundle --repo-url https://gitlab.com/firefly-linux/git-repo.git -u https://gitlab.com/firefly-linux/manifests.git -b master -m rk3588_yocto_kirkstone_release.xml
.repo/repo/repo sync -c

编译

选择映像

Yocto 项目提供了一些可用于不 layer 的映像。下表列出目前支持构建的映像和相关配方。

映像名字描述提供的layer
core-image-minimalA small image that only allows a device to bootPoky
core-image-minimal-xfceA XFCE minimal demo imagemeta-openembedded/meta-xfce
core-image-satoImage with Sato, a mobile environment and visual style for mobile devices. The image supports X11 with a Sato theme, Pimlico applications, and contains terminal, editor, and file managerPoky
core-image-westonA very basic Wayland image with a terminalPoky
core-image-x11A very basic X11 image with a terminalPoky

编译映像文件

使用 bitbake 命令构建的过程需要保证网络连接正常,如果是中国内陆客户需要保证能 ping 通外网

进入目录 <path/to/yocto/poky> ,按顺序执行如下命令

# Install the required environment packages
# sudo apt install zstd
source oe-init-build-env

# 添加 layer(只需要执行一次)
bitbake-layers add-layer ../../meta-openembedded/meta-oe
bitbake-layers add-layer ../../meta-openembedded/meta-python
bitbake-layers add-layer ../../meta-openembedded/meta-networking
bitbake-layers add-layer ../../meta-openembedded/meta-multimedia
bitbake-layers add-layer ../../meta-openembedded/meta-gnome
bitbake-layers add-layer ../../meta-openembedded/meta-xfce
bitbake-layers add-layer ../../meta-lts-mixins
bitbake-layers add-layer ../../meta-clang
bitbake-layers add-layer ../../meta-browser/meta-chromium
bitbake-layers add-layer ../../meta-rockchip

选择其中之一命令来编译完整 core-image recipes 。以下是基于 x11 的 core-image 。

MACHINE=aio-3588sjd4 bitbake core-image-minimal
MACHINE=aio-3588sjd4 bitbake core-image-minimal-xfce
MACHINE=aio-3588sjd4 bitbake core-image-x11
MACHINE=aio-3588sjd4 bitbake core-image-sato

以下是基于 wayland 的 core-image 。需要在 /path/to/yocto/meta-rockchip/conf/machine/include/display.conf 修改 DISPLAY_PLATFORM 为 wayland 。修改如下:

DISPLAY_PLATFORM ?= "wayland"
# DISPLAY_PLATFORM ?= "x11"

完成上述修改后,执行命令编译 core-image-weston

MACHINE=aio-3588sjd4 bitbake core-image-weston

注意:如果在已经进行了完整编译一次 core-image 的基础上,需要更换编译的 core-image recipes 。需要将当前编译过 core-image 的清理掉,再开始编译新的 core-image 。

例如:当前编译的是 core-image-minimal 。需要更换成 core-image-sato 。

MACHINE=aio-3588sjd4 bitbake core-image-minimal -c clean
MACHINE=aio-3588sjd4 bitbake core-image-sato

如果想单独编译部分 recipes 可以参考以下内容:

# kernel
MACHINE=aio-3588sjd4 bitbake linux-rockchip

# u-boot
MACHINE=aio-3588sjd4 bitbake u-boot-rockchip

# rkmpp
MACHINE=aio-3588sjd4 bitbake rockchip-mpp

# rockchip-librga
MACHINE=aio-3588sjd4 bitbake rockchip-librga

# 参看更多编译对象
MACHINE=aio-3588sjd4 bitbake -s

调整编译速度

修改文件/path/to/yocto/meta-rockchip/conf/machine/firefly-rk3588.conf 中的 BB_NUMBER_THREADS 和 PARALLEL_MAKE 变量配置。若线程数量设置过大可能会导致机器内存不足,导致编译失败。请根据编译机器的配置来设置编译速度。

BB_NUMBER_THREADS = "4"
PARALLEL_MAKE = "-j 4"
  • BB_NUMBER_THREADS: The maximum number of threads BitBake simultaneously executes.
  • BB_NUMBER_PARSE_THREADS: The number of threads BitBake uses during parsing.
  • PARALLEL_MAKE: Extra options passed to the make command during the do_compile task in order to specify parallel compilation on the local build host.
  • PARALLEL_MAKEINST: Extra options passed to the make command during the do_install task in order to specify parallel installation on the local build host.

更多 bitbake 选项

从根本上说,BitBake 是一个通用任务执行引擎,它允许 shell 和 Python 任务高效并行运行,同时在复杂的任务间依赖约束下工作。 BitBake 的主要用户之一,OpenEmbedded,利用这个核心并使用面向任务的方法构建嵌入式 Linux 软件堆栈。更多详细使用方法请查看《bitbake-user-manual》。

MACHINE=aio-3588sjd4 bitbake <target> <paramater>
# e.g
MACHINE=aio-3588sjd4 bitbake u-boot-rockchip -c clean
MACHINE=aio-3588sjd4 bitbake u-boot-rockchip
Bitbake paramater描述
-c fetch拉取目标所需要的代码
-c clean清除目标的输出文件
-c cleanall删除目标所有输出文件、共享高速缓存(shared state cache)和源代码
-c compile -f使用此选项可在部署映像后强制重新编译,但不建议使用,除非 Yocto Project 不知道目标代码已经发生改变
-c listtasks列出目标定义的所有 target

分区固件烧写

编译生成的固件位于目录<path/to/yocto>/build/tmp/deploy/images/<board>/

$ sudo upgrade_tool di -boot boot.img
$ sudo upgrade_tool di -uboot uboot.img
$ sudo upgrade_tool di -misc misc.img
$ sudo upgrade_tool di -recovery recovery.img
  • 分区烧写适用于调试阶段,固件验证请使用下文的统一固件烧写
  • rootfs 不支持单独烧写,需要打包完整固件再烧写

统一固件烧写

编译生成的固件位于目录<path/to/yocto>/build/tmp/deploy/images/<board>/,待下载的文件为.wic与update.img,进入loader模式后执行如下命令:

$ sudo upgrade_tool wl 0 <IMAGE NAME>.wic
$ sudo upgrade_tool uf update.img
  • 固件默认登录账号为:root,密码为:firefly 。固件含有普通用户账号名称为:firefly ,密码为:firefly 。

注意:如果客户在 Windows PC 上开发,使用 RKdevtool 直接烧录 update.img 即可,不需要烧录 <IMAGE NAME>.wic。但是要注意一点是 update.img 是一个链接文件,实际得选择链接文件所指向的实际文件。

相关概述

Yocto Project 是一个专注于嵌入式 Linux® 操作系统开发的开源协作项目,它提供灵活的工具集和开发环境,允许全球的嵌入式设备开发人员通过共享技术,软件堆栈,配置和用于创建这些定制的Linux映像的最佳实践进行协作。有关 Yocto 项目的更多信息,请参阅 Yocto Project 官网:www.yoctoproject.org/。 Yocto Project 官网上有 Yocto Project Reference Manual 和 Yocto Project Overview 等相关文档详细描述了如何构建系统。

Yocto Project Release layer 介绍

layer路径优先级(数字越大优先级越高)描述
meta-oemeta-openembedded/meta-oe6contains a large amount of additional recipes
meta-pythonmeta-openembedded/meta-python7Provide Python recipes
meta-qt5meta-qt57Provides QT5 recipes
meta-clangmeta-clang7clang compiler
meta-rockchipmeta-rockchip9Rockchip board level support available
metameta5Contains the OpenEmbedded-Core metadata
meta-pokymeta-poky5Holds the configuration for the Poky reference distribution
meta-yocto-bspmeta-yocto-bsp5Configuration for the Yocto Project reference hardware board support package.
meta-chromiummeta-chromium7Provide chromium browser recipe

编译 Debian 固件

本章介绍 Debian 固件的编译流程,推荐在 Ubuntu 18.04 系统环境下进行开发,若使用其它系统版本,可能需要对编译环境做相应调整。

本教程的编译部分适用于 v1.0.6e 以上 SDK 版本
$ readlink -f .repo/manifest.xml
/home/daijh/p/rk3588/.repo/manifests/rk3588/rk3588_linux_release_20230301_v1.0.6e.xml

准备工作

搭建编译环境

sudo apt-get install repo git ssh make gcc libssl-dev liblz4-tool \
expect g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support \
qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g++-multilib \
unzip \
device-tree-compiler ncurses-dev \

编译 SDK

编译前配置

在 device/rockchip/rk3588/ 目录下,有不同板型的配置文件,选择配置文件:

./build.sh aio-3588sjd4-debian.mk

编译

全自动编译
7z x debian_rk3588_rootfs_xxx.7z
mkdir debian
mv debianxx-rootfs.img debian/debian-rootfs.img
  • 开始编译
./build.sh

生成的完整固件会保存到 rockdev/pack/ 目录。

部分编译
  • 编译 u-boot
./build.sh uboot
  • 编译 kernel
./build.sh extboot
  • 编译 recovery
./build.sh recovery
7z x debian_rk3588_rootfs_xxx.7z
mkdir debian
mv debianxx-rootfs.img debian/rootfs.img
  • 更新各部分镜像链接到 rockdev/ 目录:
./mkfirmware.sh
  • 打包固件,生成的完整固件会保存到 rockdev/pack/ 目录。
./build.sh updateimg

编译 Buildroot 固件

本章介绍 Buildroot 固件的编译流程,推荐在 Ubuntu 18.04 系统环境下进行开发,若使用其它系统版本,可能需要对编译环境做相应调整。

本教程的编译部分适用于 v1.0.6e 以上 SDK 版本
$ readlink -f .repo/manifest.xml
/home/daijh/p/rk3588/.repo/manifests/rk3588/rk3588_linux_release_20230301_v1.0.6e.xml

准备工作

搭建编译环境

sudo apt-get install repo git ssh make gcc libssl-dev liblz4-tool \
expect g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support \
qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g++-multilib \
unzip \
device-tree-compiler ncurses-dev \

编译 SDK

编译前配置

在 device/rockchip/rk3588/ 目录下,有不同板型的配置文件,选择配置文件:

./build.sh aio-3588sjd4-buildroot.mk

编译

全自动编译

全自动编译会执行上述编译、打包操作,生成 RK 固件。

./build.sh

打包固件,生成的完整固件会保存到 rockdev/pack/ 目录。

部分编译
  • 编译 u-boot
./build.sh uboot
  • 编译 kernel
./build.sh extboot
  • 编译 recovery
./build.sh recovery
  • 编译 buildroot
./build.sh rootfs
  • 更新各部分镜像链接到 rockdev/ 目录:
./mkfirmware.sh
  • 打包固件,生成的完整固件会保存到 rockdev/pack/ 目录。
./build.sh updateimg

获取 SDK

请联系销售(sales@t-firefly.com)获取 SDK 下载链接, 并且阅读下载链接的 readme 文档。

编译说明

注意:

1. SDK 采用交叉编译,所以要在 X86_64 电脑上使用 SDK,不要将 SDK 下载到板子上

2. 编译环境请使用 Ubuntu20.04(真机或 docker 容器),如果使用其他版本可能导致编译出错

3. 不要在虚拟机共享文件夹以及非英文目录存放、解压SDK

4. 获取、编译 SDK 请全程使用普通用户,不允许也不需要使用 root 权限(除非需要 apt 安装软件)

SDK 配置介绍

编译固件

编译 Ubuntu 固件

准备工作

执行下面两条命令来安装需要的工具

sudo apt update

sudo apt install repo git ssh make gcc libssl-dev liblz4-tool \
expect g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support \
qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g++-multilib \
unzip device-tree-compiler ncurses-dev p7zip-full

下载根文件系统:Ubuntu 根文件系统(64位) Kernel6.1,请使用网盘中 kernel-6.1 目录下的文件系统。

下载后将文件系统解压到 SDK/prebuilt_rootfs/ 下,并创建链接

# 解压
7z x Ubuntu22.04-xxxx.7z


mkdir ./SDK/prebuilt_rootfs/
mv Ubuntu22.04-xxxx.img ./SDK/prebuilt_rootfs/
cd ./SDK/prebuilt_rootfs/
ln -sf Ubuntu22.04-xxxx.img rk3588_ubuntu_rootfs.img
cd ..

编译前配置

执行 ./build.sh lunch 列出所有可用的配置文件,输入编号选择对应的配置文件,注意要选择带有 ubuntu 字样的配置文件:

./build.sh lunch

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

Manifest: rk3588_linux6.1_release_20250114_v1.1.1c

Log colors: message notice warning error fatal

Log saved at /home2/daijh/p/rk3588/sdk_6.1/output/sessions/2025-01-14_14-39-08
Pick a defconfig:

1. rockchip_defconfig
2. firefly_rk3588_aio-3588jd4_buildroot_defconfig
3. firefly_rk3588_aio-3588jd4_debian_defconfig
4. firefly_rk3588_aio-3588jd4_ubuntu_defconfig
5. firefly_rk3588_aio-3588l_debian_defconfig
6. firefly_rk3588_aio-3588l_ubuntu_defconfig
7. firefly_rk3588_aio-3588q_debian_defconfig
8. firefly_rk3588_aio-3588q_ubuntu_defconfig
9. firefly_rk3588_aio-3588sjd4_debian_defconfig
10. firefly_rk3588_aio-3588sjd4_ubuntu_defconfig
11. firefly_rk3588_itx-3588j_buildroot_defconfig
12. firefly_rk3588_itx-3588j_debian_defconfig
13. firefly_rk3588_itx-3588j_ubuntu_defconfig
14. firefly_rk3588_roc-rk3588-rt-ext-10ge_debian_defconfig
15. firefly_rk3588_roc-rk3588-rt-ext-10ge_ubuntu_defconfig
16. firefly_rk3588_roc-rk3588-rt-ext-2g5e_debian_defconfig
17. firefly_rk3588_roc-rk3588-rt-ext-2g5e_ubuntu_defconfig
18. firefly_rk3588_roc-rk3588-rt_debian_defconfig
19. firefly_rk3588_roc-rk3588-rt_ubuntu_defconfig
20. firefly_rk3588_roc-rk3588s-pc-ext_debian_defconfig
21. firefly_rk3588_roc-rk3588s-pc-ext_ubuntu_defconfig
22. firefly_rk3588_roc-rk3588s-pc_debian_defconfig
23. firefly_rk3588_roc-rk3588s-pc_ubuntu_defconfig
24. rockchip_rk3588_evb1_lp4_v10_defconfig
25. rockchip_rk3588_evb7_v11_defconfig
26. rockchip_rk3588_ipc_evb1_v10_defconfig
27. rockchip_rk3588_ipc_evb7_lp4_v11_defconfig
28. rockchip_rk3588_multi_ipc_evb1_v10_defconfig
29. rockchip_rk3588s_evb1_lp4x_v10_defconfig
Which would you like? [1]:

编译

完整编译

执行如下命令即可

./build.sh all

编译完成后会生成完整固件 output/update/update.img

部分编译

一般来说自定义开发只涉及 kernel 和 uboot。因此,在进行过一次完整编译后,如果后续又修改了 kernel 或 uboot,可以部分编译来加快速度。

  • 单独编译 u-boot,生成 u-boot/uboot.img
./build.sh uboot
  • 单独编译 kernel,生成 kernel/extboot.img
./build.sh extboot
  • 将各部件打包成 update.img
./build.sh updateimg

编译 Debian 固件

准备工作

执行下面两条命令来安装需要的工具

sudo apt update

sudo apt install repo git ssh make gcc libssl-dev liblz4-tool \
expect g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support \
qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g++-multilib \
unzip device-tree-compiler ncurses-dev p7zip-full

下载根文件系统:Debian 根文件系统(64位),请使用网盘中 kernel-6.1 目录下的文件系统。

下载后将文件系统解压到 SDK/prebuilt_rootfs/ 下,并创建链接

# 解压
7z x debian12_xxxx_rootfs_xxxx.7z

# 将解压后的 rootfs 镜像移动到 sdk 并创建一个符号链接
mkdir ./SDK/prebuilt_rootfs/
mv debian12_xxxx_rootfs_xxxx.img ./SDK/prebuilt_rootfs/
cd ./SDK/prebuilt_rootfs/
ln -sf debian12_xxxx_rtoofs_xxxx.img rk3588_debian_rootfs.img
cd ..

编译前配置

执行 ./build.sh lunch 列出所有可用的配置文件,输入编号选择对应的配置文件,注意要选择带有 debian 字样的配置文件:

./build.sh lunch

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

Manifest: rk3588_linux6.1_release_20241203_v1.1.1b.xml

Log colors: message notice warning error fatal

Log saved at /home4/lth/project/linux/rk3588_6.1_release/rk3588_6.1/output/sessions/2024-12-11_09-15-44
Pick a defconfig:

1. rockchip_defconfig
2. firefly_rk3588_aio-3588l_debian_defconfig
3. firefly_rk3588_aio-3588q_debian_defconfig
4. firefly_rk3588_aio-3588sjd4_debian_defconfig
5. firefly_rk3588_itx-3588j_buildroot_defconfig
6. firefly_rk3588_itx-3588j_debian_defconfig
7. firefly_rk3588_roc-rk3588-rt-ext-10ge_debian_defconfig
8. firefly_rk3588_roc-rk3588-rt-ext-2g5e_debian_defconfig
9. firefly_rk3588_roc-rk3588-rt_debian_defconfig
10. firefly_rk3588_roc-rk3588s-pc-ext_debian_defconfig
11. firefly_rk3588_roc-rk3588s-pc_debian_defconfig
12. rockchip_rk3588_evb1_lp4_v10_defconfig
13. rockchip_rk3588_evb7_v11_defconfig
14. rockchip_rk3588_ipc_evb1_v10_defconfig
15. rockchip_rk3588_ipc_evb7_lp4_v11_defconfig
16. rockchip_rk3588_multi_ipc_evb1_v10_defconfig
17. rockchip_rk3588s_evb1_lp4x_v10_defconfig
Which would you like? [1]:

编译

完整编译

执行如下命令即可

./build.sh all

编译完成后会生成完整固件 output/update/update.img

部分编译

一般来说自定义开发只涉及 kernel 和 uboot。因此,在进行过一次完整编译后,如果后续又修改了 kernel 或 uboot,可以部分编译来加快速度。

  • 单独编译 u-boot,生成 u-boot/uboot.img
./build.sh uboot
  • 单独编译 kernel,生成 kernel/extboot.img
./build.sh extboot
  • 将各部件打包成 update.img
./build.sh updateimg

编译 Buildroot 固件

准备工作

执行下面两条命令来安装需要的工具

sudo apt update

sudo apt install repo git ssh make gcc libssl-dev liblz4-tool \
expect g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support \
qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g++-multilib \
unzip device-tree-compiler ncurses-dev

编译前配置

执行 ./build.sh lunch 列出所有可用的配置文件,输入编号选择对应的配置文件,注意要选择带有 buildroot 字样的配置文件:

./build.sh lunch

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

Manifest: rk3588_linux6.1_release_20241203_v1.1.1b.xml

Log colors: message notice warning error fatal

Log saved at /home4/lth/project/linux/rk3588_6.1_release/rk3588_6.1/output/sessions/2024-12-11_09-15-44
Pick a defconfig:

1. rockchip_defconfig
2. firefly_rk3588_aio-3588l_debian_defconfig
3. firefly_rk3588_aio-3588q_debian_defconfig
4. firefly_rk3588_aio-3588sjd4_debian_defconfig
5. firefly_rk3588_itx-3588j_buildroot_defconfig
6. firefly_rk3588_itx-3588j_debian_defconfig
7. firefly_rk3588_roc-rk3588-rt-ext-10ge_debian_defconfig
8. firefly_rk3588_roc-rk3588-rt-ext-2g5e_debian_defconfig
9. firefly_rk3588_roc-rk3588-rt_debian_defconfig
10. firefly_rk3588_roc-rk3588s-pc-ext_debian_defconfig
11. firefly_rk3588_roc-rk3588s-pc_debian_defconfig
12. rockchip_rk3588_evb1_lp4_v10_defconfig
13. rockchip_rk3588_evb7_v11_defconfig
14. rockchip_rk3588_ipc_evb1_v10_defconfig
15. rockchip_rk3588_ipc_evb7_lp4_v11_defconfig
16. rockchip_rk3588_multi_ipc_evb1_v10_defconfig
17. rockchip_rk3588s_evb1_lp4x_v10_defconfig
Which would you like? [1]:

编译

完整编译

执行如下命令即可

./build.sh all

编译完成后会生成完整固件 output/update/update.img

部分编译

进行过一次完整编译后,如果后续又修改了 kernel 或 uboot,可以部分编译来加快速度。

  • 单独编译 u-boot,生成 u-boot/uboot.img
./build.sh uboot
  • 单独编译 kernel,生成 kernel/extboot.img
./build.sh extboot
  • 将各部件打包成 update.img
./build.sh updateimg

但是如果你修改了 buildroot,需要重新进行完整编译。

本页目录