智能化科技領域,嵌入式系統開發占據著極為重要的地位。瑞迅科技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文章
9564瀏覽量
392580 -
嵌入式系統
+關注
關注
41文章
3757瀏覽量
133723 -
Docker
+關注
關注
0文章
533瀏覽量
14302
發布評論請先 登錄
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程序?
評論