智能化科技领域,嵌入式系统开发占据着极为重要的地位。瑞迅科技RK3568、RK3588主板及核心板以其卓越的性能,为众多应用场景赋能。基于 Linux 系统搭建其开发环境,为用户开启高效开发的大门。
Q
痛点:环境搭建为何如此关键?
嵌入式Linux开发,环境是地基。传统方式下,开发者往往需要:
四处搜寻匹配的工具链版本
手动配置复杂的编译参数
多次反复适配环境
耗费数日搭建基础环境
编译环境与运行环境差异... ...
A
瑞迅标准化开发环境一键部署
某项目为保证编译环境和运行环境一致以及解决依赖相关的问题,常规方式有将主板上的ubuntu 系统在宿主机上通过chroot后进行编译,也有开发编译直接放在主板上等。今天我们重点介绍在宿主机上通过docker方式加载烧入主板的ubuntu,来构建编译系统。
1. 通过瑞迅 sdk 编译出来rk3588 ubuntu22.04文件系统,将binary 文件系系统压缩成binary.tar.bz2

2. 在装有docker的宿主机环境下,用过以下命令加载本地镜像
sudo cat binary.tar.gz |sudo docker import - rk3588_ubuntu:22.04

3. 加载成功后,查看镜像是否存在
sudo docker images

4. 运行镜像,并且将宿主机中的/home/kcy15/ubuntu_dockerimage/code_src挂载到容器中home/linaro/code_src
sudo docker run -it -v /home/kcy15/ubuntu_
dockerimage/code_src:/home/linaro/code_src 5a426e76d5fb /bin/bash

5.在docker容器内安装编译所需的环境

6.若安装build-essential出现以下错误则直接创建
mkdir -p /var/cache/apt/archives/partial

继续安装,成功后,查看gcc版本

7.保存镜像,注意安装后不要退出容器,另开一终端将当前容器环境保存,比如目前安装环境运行容器ID 5edec48deb29
通过sudo docker commit 5edec48deb29 rk3588_ubuntu_v0.1保存环境,保存后就可以退出通过docker的 IMAGE ID拉起来的终端。
后期通过 sudo docker start 5edec48deb29 打开容器,后期编译可以进入环境

8.编译测试
进入容器编译helloworld

在容器运行helloworld

在宿主机中将容器中编译出来的可执行文件拷贝到同样环境的rk3588中

在rk3588 中运行可执行文件

9.镜像复用
为方便使用,可以将docker 镜像保存本地 或者通过docker push到docker 服务器直接拉取

将本地保存的镜像,复制到其他服务器中,通过以下方式本地加载镜像
sudo docker load --input rk3588_ubuntu_v0.1.tar

删除本地镜像
sudo docker rmi -f 44a8c59b86d6

#瑞迅科技# 不止提供硬核的RK3588 /RK3568等平台核心板、主板、触控一体机,更致力于打造开箱即用的开发者体验。简化底层配置,释放创新能量——嵌入式开发的正确打开方式!助力客户高效实现产品创新与落地。
-
ARM
+关注
关注
135文章
9499浏览量
388741 -
嵌入式系统
+关注
关注
41文章
3716浏览量
133106 -
Docker
+关注
关注
0文章
526浏览量
14023
发布评论请先 登录
Wifi-IOT开发板学习之MacOS搭建编译环境(一)
【HarmonyOS HiSpark Wi-Fi IoT 套件试用连载】搭建基于Linux的Docker开发环境
一键搭建ubuntu rtthread qemu编译环境
arm的开发环境有哪些_使用Eclipse搭建ARM架构MCU开发环境
MySql环境一键安装应用程序免费下载
嵌入式linux开发环境搭建(Docker版,基于iTop 4412开发板)
Jenkins+docker+springboot一键自动部署项目
3568编译环境搭建
宝塔面板Docker一键安装:部署GPTAcademic,开发私有GPT学术优化工具

开发环境一键部署 | 如何搭建Docker环境编译ARM程序?
评论