这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 国产MCU » 飞凌RK3588开发板源码编译

共1条 1/1 1 跳转至

飞凌RK3588开发板源码编译

高工
2026-01-23 14:34:11     打赏

开发环境

主机:Ubuntu 20.04

开发板:OK3588-C开发板

1 准备源码

1.创建工作目录

$ mkdir -p ~/rk3588

2.拷贝源码

将用户资料中的源码文件 OK3588-linux-source.tar.bz2.a*拷贝到虚拟机~/rk3588 目录。

1680013721327c63d3ycrwh

拷贝文件的方式有很多,笔者使用的是共享文件夹方式。

3.解压源码

$ cat OK3588-linux-source.tar.bz2.0* > OK3588-linux-source.tar.bz2

$ tar -xvf OK3588-linux-source.tar.bz2

耐心等待完成即可,解压时间有点久。

4.进入源码

$ cd ~/rk3588/OK3588-linux-source

目录结构

$ tree -L 1

bruceou@ubuntu:~/rk3588/OK3588-linux-source$ tree -L 1
.
├── app
├── br.log
├── buildroot# Buildroot 根文件系统编译目录
├── build.sh -> device/forlinx/common/build.sh # 编译脚本
├── debian # Debian 根文件系统编译目录
├── device # 编译相关配置文件
├── docs
├── envsetup.sh -> buildroot/build/envsetup.sh
├── external
├── kernel
├── Makefile -> buildroot/build/Makefile
├── mkfirmware.sh -> device/forlinx/common/mkfirmware.sh# 链接脚本
├── prebuilts
├── rkbin
├── rkflash.sh -> device/forlinx/common/rkflash.sh# 烧写脚本
├── rockdev
├── tools #工具目录
├── u-boot# u-boot目录
├── ubuntu20
└── uefi
14 directories, 6 files

2 编译SDK

1.编译前配置

在 device/forlinux/rk3588/目录下,有不同板型的配置文件。

1680013722014prjscrp6ki

选择配置文件进行编译:

$./build.sh BoardConfig-buildroot-ok3588.mk

1680013722445au818jmjks

相关配置介绍:

#!/bin/bash

# Target arch
export RK_ARCH=arm64

# Target rootfs
export RK_TARGET_ROOTFS=buildroot
# Uboot defconfig
export RK_UBOOT_DEFCONFIG=OK3588-Linux
# Uboot image format type: fit(flattened image tree)
export RK_UBOOT_FORMAT_TYPE=fit
# Kernel defconfig
export RK_KERNEL_DEFCONFIG=OK3588-Linux_defconfig
# Kernel defconfig fragment
export RK_KERNEL_DEFCONFIG_FRAGMENT=
# Kernel dts
export RK_KERNEL_DTS=OK3588-C-Linux
# boot image type
export RK_BOOT_IMG=boot.img
# kernel image path
export RK_KERNEL_IMG=kernel/arch/arm64/boot/Image
# kernel image format type: fit(flattened image tree)
export RK_KERNEL_FIT_ITS=boot.its
# parameter for GPT table
export RK_PARAMETER=parameter.txt
# Buildroot config
export RK_CFG_BUILDROOT=OK3588
# Recovery config
export RK_CFG_RECOVERY=OK3588-recovery
# Recovery image format type: fit(flattened image tree)
export RK_RECOVERY_FIT_ITS=boot4recovery.its
# ramboot config
export RK_CFG_RAMBOOT=
# Pcba config
export RK_CFG_PCBA=rockchip_rk3588_pcba
# Build jobs
export RK_JOBS=32
# target chip
export RK_TARGET_PRODUCT=ok3588
# Set rootfs type, including ext2 ext4 squashfs
export RK_ROOTFS_TYPE=ext4
# debian version (debian10: buster, debian11: bullseye)
export RK_DEBIAN_VERSION=bullseye
# yocto machine
export RK_YOCTO_MACHINE=rockchip-rk3588-evb
# rootfs image path
export RK_ROOTFS_IMG=rockdev/rootfs.${RK_ROOTFS_TYPE}
# Set ramboot image type
export RK_RAMBOOT_TYPE=
# <dev>:<mount point>:<fs type>:<mount flags>:<source dir>:<image size(M|K|auto)>:[options]
export RK_EXTRA_PARTITIONS=" \
    oem:/oem:ext2:defaults:oem_normal:auto:resize
    userdata:/userdata:ext2:defaults:userdata_normal:auto:resize
"
# OEM build on buildroot
#export RK_OEM_BUILDIN_BUILDROOT=YES
#misc image
export RK_MISC=wipe_all-misc.img
#choose enable distro module
export RK_DISTRO_MODULE=
# Define pre-build script for this board
export RK_BOARD_PRE_BUILD_SCRIPT=app-build.sh
# Define package-file
export RK_PACKAGE_FILE=rk3588-package-file

2.编译

编译 u-boot

$./build.sh uboot

编译 kernel

$./build.sh kernel

16800137227511y07fk0ctk

……

编译 recovery

$./build.sh recovery

168001372322445ynqhvyg3

编译 Buildroot 根文件系统

$./build.sh rootfs

1680013723733bo4oju3m27

……

1680013724798fu3d9l1qv4

制作文件系统的时间会比较久,请耐心等待编译完成。

注1:确保作为普通用户编译 Buildroot 根文件系统,避免不必要的错误。

注2:如果不想编译文件系统,也可直接从已有的镜像中解压后,将其拷贝到rockdev目录下。

3.打包固件

更新各部分镜像链接到 rockdev/目录:

$./mkfirmware.sh

1680013725370prgnybs0ta

……

168001372601050983l3u83

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

$./build.sh updateimg

16800137264796kf7idb8dg

[PS]全自动编译

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

$./build.sh

3 镜像烧写测试

这里使用USB OTG烧写系统,详情强参看前面的章节。

如果系统烧写成功后,接下来就可以调试系统了,最常用的就是调试。推荐使用putty、SecureCRT或Xshell 7等终端工具。

连接好串口,设置波特率为115200,然后就可以进入到Linux系统了。

1680013728715oeajsywdbx

当然啦,如果PC配置adb,也可使用adb进入系统,和使用串口的效果是一样的。

1680013728962fxjam0cxy9





关键词: 飞凌     RK3588     源码     编译    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]