瑞芯微RK3568|SDK开发之环境安装及编译操作

发表时间:2023-09-26 15:26


1. SDK简介

一个通用 Linux SDK 工程目录包含有buildrootappkerneldevicedocsexternal 等目录。其中一些特性芯片如RK3308/RV1108/RV1109/RV1126等,会有所不同。

app存放上层应用 app,主要是 qcamera/qfm/qplayer/settings 等一些应用程序。

buildroot基于 buildroot (2018.02-rc3) 开发的根文件系统。

device/rockchip存放各芯片板级配置和Parameter文件,以及一些编译与打包固件的脚本和预备文件。

docs存放芯片模块开发指导文档、平台支持列表、芯片平台相关文档、Linux开发指南等。

IMAGE存放每次生成编译时间、XML、补丁和固件目录。

external存放第三方相关仓库,包括音频、视频、网络、recovery 等。

kernel存放 kernel 4.4 4.19 开发的代码。

prebuilts存放交叉编译工具链。

rkbin存放 Rockchip 相关的 Binary 和工具。

rockdev存放编译输出固件。

tools存放 Linux Windows 操作系统环境下常用工具。

2. SDK环境安装

SDK 开发环境是在Ubuntu 系统上开发测试。我们推荐使用 Ubuntu 18.04 的系统进行编译。其他的Linux 版本可能需要对软件包做相应调整。除了系统要求外,还有其他软硬件方面的要求。

硬件要求:64 位系统,硬盘空间大于40G。如果您进行多个构建,将需要更大的硬盘空间。

软件要求:Ubuntu 18.04 系统。

编译 SDK 环境搭建所依赖的软件包安装命令如下:

sudo apt-get installuuid uuid-dev zlib1g-dev liblz-dev liblzo2-2 liblzo2-dev git curl \

u-boot-tools mtd-utilsandroid-tools-fsutils openjdk-8-jdk device-tree-compiler gdisk m4 \

gnupg flex bison gperflibsdl1.2-dev libesd-java libwxgtk3.0-dev squashfs-tools \

build-essential zipunzip libncurses5-dev pngcrush schedtool libxml2 libxml2-utils xsltproc \

lzop libc6-devg++-multilib lib32z1-dev lib32ncurses5-dev lib32readline-dev gcc-multilib \

libswitch-perllibssl-dev liblz4-tool gconf2 net-tools lib32ncurses5-dev tree vim gparted \

g++ libyaml-devlibpython2.7-dev make libssl-dev lib32z1 p7zip-full python-pip libgmp-dev \

libmpc-dev

建议使用 Ubuntu18.04 系统或更高版本开发,若编译遇到报错,可以查看报错信息,安装对应的软件包。

3. SDK整体编译

3.1       查询操作

SDK目录下输入./build.sh -h可以得知SDK支持的命令,如下所示。


SDK1.png


  • -h可查看各部分模块的详细编译命令,例如:./build.sh-h kernel可以查看单独编译内核的详细步骤,详细信息将在后续章节逐一介绍。

3.2      整体编译操作

SDK支持单独编译以及整体编译,单独编译。单独编译在下面独立章节会详细介绍,此处先介绍整体编译方法。步骤如下:

·   选择默认配置,./build.sh lunch,选择第5个配置(rk3568评估套件)

SDK2.png

·   执行编译操作,./build.sh all

·   执行打包操作,./mkfirmware.sh

·   等待编译完成获取编译固件

具体操作命令如下:

./build.shBoardConfig-rk3568-evb1-ddr4-v10.mk

./build.shall

./mkfirmware.sh

编译到内核阶段时,第一次编译需要对电源域进行判断,这里全部选择第2个3300000,如下图所示:

SDK3.png

得到的编译固件路径为SDK包根目录下的rockdev目录,如下所示。

SDK4.png

然后再更新万象提供的光盘资料出厂镜像中的对应固件即可,如下所示。

SDK5.png

rockdev目录内的烧录文件实际是把各个组成部分的编译结果链接到此目录,各个编译结果的链接情况如下所示。

SDK6.png

3.1 rockdev目录内容

所以各个组成部分的来源如下所示。

来源

文件

描述

Uboot

MiniLoaderAll.bin

引导文件

uboot.img

uboot代码主体

Kernel

boot.img

kernel代码主体

Buildroot

recovery.img

来源于buildroot

rootfs.ext4

这两个文件为同一个文件,为buildroot代码主体

rootfs.img

杂项

misc.img

来自rockchip的自定义文件

oem.img

oem分区的固件镜像

parameter.txt

参数保存文件,由原厂定义

userdata.img

用户空间的固件镜像

3.3       部分编译操作

3.3.1   配置SDK

./build.shBoardConfig-rk3568-evb1-ddr4-v10.mk

3.3.2   编译kernel

./build.sh kernel

3.3.3   编译rootfs

./build.sh rootfs

3.3.4   打包update.img

./build.sh updateimg


文章列表
新年伊始,喜讯传来!武汉万象奥科凭借过去一年在RK系列嵌入式技术方案开发、市场推广等方面的努力和积累,从Rockchip众多合作伙伴中脱颖而出,荣获瑞芯微“2024年度优秀合作奖”!这一荣誉的获得,是对武汉万象奥科技术实力和服务水平的充分肯定,更是双方合作、共赢的最佳见证。过去一年,万象奥科与瑞芯微紧密合作,成功推出并量产了搭载瑞芯微RK3588、RK3576、RK3562、RK3506等芯...
`overlayroot` 是一种使用 OverlayFS 实现的功能,可将根文件系统挂载为只读,并通过一个临时的写层实现对文件系统的修改。这种方法非常适合嵌入式设备或需要保持系统文件完整性和安全性的场景。下文以 RK3568 平台为例,介绍制作 overlayroot 的详细步骤。1. 制作精简文件系统ramdisk1.1   环境准备1. 目标系统:确保系统支持 OverlayFS(内核...
RK3506是一款高性能三核Cortex-A7处理器,内部集成Cortex-M0核心, 适合于工业控制、工业通信、人机交互等应用场景。为方便开发、使用,万象奥科推出HD-RK3506G-MINI单板机,仅需99元即可入手。单板机接口包含:以太网、RS232/RS485、CAN总线、液晶屏,支持接口扩展!产品特点:  多核异构3xCortex-A7+Cortex-M0,低功耗、高实时  外设接...
RK3506 是瑞芯微推出的MPU产品,芯片制程为22nm,定位于轻量级、低成本解决方案。该MPU具有低功耗、外设接口丰富、实时性高的特点,适合用多种工商业场景。本文将基于RK3506的设计特点,为大家分析其应用场景。RK3506核心板主要分为三个型号,各型号间的区别如下图:图 1  RK3506核心板处理器型号场景1:显示HMIRK3506核心板显示接口支持RGB、MIPI、QSPI输出,...
RK3506单板机(卡片电脑)是一款高性能三核Cortex-A7处理器,内部集成Cortex-M0核心,RK3506单板机具有接口丰富、实时性高、显示开发简单、低功耗及多系统支持等特点,非常适合于工业控制、工业通信、人机交互等应用场景。 多核异构3xCortex-A7+Cortex-M0 外设接口丰富,板载网络、串口、CAN总线 支持Buildroot、Yocto系统,支持AMP混合部署 支...
作为优秀工程师的你,已身经百战、阅板无数!请先醒醒,新的项目来了,这是一个既要、又要、还要的产品需求,ARM核心板中一个处理器怎么能实现这么丰富的外围接口?踌躇之际,你偶阅此文。于是,“潘多拉”的魔盒打开了!
UGFC是Unified Gold Finger Core Board的缩写(意指:统一接口定义金手指核心板),为武汉万象奥科电子有限公司基于企业标准定义的一种针对嵌入式、低功耗、通用型的小型计算机模块标准,采用204Pin金手指连接器,基于ARM架构的MPU平台,主要面向泛工业领域的数据采集、边缘数据处理、接口通讯与人机交互等应用场景。
1. 概念SMARC(Smart Mobility ARChitecture,智能移动架构)是一种通用的小型计算机模块定义,基于ARM和X86技术的模块化计算机低功耗嵌入式架构平台,旨在满足低功耗、低成本和高性能的应用需求。这些模块通常使用与平板电脑和智能手机中相似的ARM SOC,或其他低功耗SOC和CPU。  图片(314 Pin金手指)2. 起源SMARC最初名为ULP-COM,主要发...
网络时间协议NTP(Network TimeProtocol)是用于互联网中时间同步的标准互联网协议,可以把计算机的时间同步到某些时间标准。NTP对于我们产品来说有什么用呢,简单的讲,当你的设备时间不准确了,你可以接入到互联网,从网上同步一下时间,非常方便。
在 Android 开发中,源码管理是一项至关重要且颇具挑战性的任务。面对包含数百个 git 库的 Android 源码,如何高效地进行下载、管理和协作开发成为了开发者们必须攻克的难题!
武汉万象奥科电子有限公司
服务热线:027-59218026
销售邮箱:sales@vanxoak.com
主营产品:ARM核心板、ARM工控板
工业网关、软硬件定制设计
地址:武汉东湖新技术开发区大学园路长城园路8号海容基孵化园B5

扫描二维码
关注公众号
产品及方案咨询
专业专注   合作共赢
移动电话:181 2058 0511 (湖北)
移动电话:175 7010 9551 (华南、华中)
移动电话:133 0386 9667 (华东、华北)
移动电话:187 3812 7320 (其他)