0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

飛凌技術(shù)貼 | OK3568-C開發(fā)板源碼編譯

飛凌嵌入式 ? 2022-09-05 10:50 ? 次閱讀

文章來源:飛凌嵌入式官網(wǎng)

搜索【Forlinx】進(jìn)入飛凌官網(wǎng)了解更多產(chǎn)品詳情和行業(yè)資訊

主機(jī):Ubuntu18.04

開發(fā)板:OK3568-C開發(fā)板

本文將為大家介紹在飛凌嵌入式OK3568-C開發(fā)板上進(jìn)行源碼編譯的過程,希望能夠?qū)Ω魑?a target="_blank">工程師小伙伴有所幫助。話不多說,我們馬上進(jìn)入正題。

1、準(zhǔn)備源碼

1. 創(chuàng)建工作目錄

$mkdir -p ~/rk3568

2. 拷貝源碼

將用戶資料中的源碼文件OK3568-linux-source.tar.bz2.a*拷貝到虛擬機(jī)~/rk3568目錄。

pYYBAGMSvDeAIjbDAAAdqpfUS8Q769.png

拷貝文件的方式有很多,筆者使用的是共享文件夾方式。

【注】OK3568源碼使用分段壓縮,每段最大4G,這樣方便拷貝,因此有些存儲器單文件最大支持4G。

3. 解壓源碼

$cat OK3568-linux-source.tar.bz2.a* >OK3568-linux-source.tar.bz2

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

耐心等待完成即可,解壓時間有點久。

4. 進(jìn)入源碼

$cd ~/rk3568/OK3568-linux-source

目錄結(jié)構(gòu)

pYYBAGMSvDeAJw33AABjLCSxw6k530.png

2、編譯SDK

1. 編譯前配置

在device/rockchip/ok3568/目錄下,有不同板型的配置文件,選擇配置文件:

$./build.shBoardConfig-ok3568.mk

相關(guān)配置介紹:

poYBAGMSvDiAZsTqAAK86-Lxtho11.jpeg

2. 編譯

編譯u-boot

$./build.shuboot

pYYBAGMSvDiAc8BLAABKhAM8NM0300.png

……

poYBAGMSvDeAK1YgAABL_QyNpl8317.png

編譯kernel

$./build.shkernel

pYYBAGMSvDiARpA3AAAlMEvA4X8551.png

……

poYBAGMSvDiAWqfwAAB4PVQpj8I678.png

【注】編譯一段時間后會彈出下圖界面,需要選擇,提取圖中信息,VCCIO4和VCCIO6選擇1800000其余選擇3300000,使用上下方向按鍵選擇選項,按回車確認(rèn)選擇即可。

pYYBAGMSvDiAJT46AAA8AdRFmEk078.png

編譯recovery

$./build.shrecovery

pYYBAGMSvDiAaWDYAAAxyVUzdxc480.png

……

poYBAGMSvDiAQ4Y_AAA0iwilfYA004.png

編譯Buildroot根文件系統(tǒng)

$./build.shbuildroot

poYBAGMSvDmAPhbqAABTGMrG-X4702.png

制作文件系統(tǒng)的時間會比較久,請耐心等待編譯完成。

【注1】確保作為普通用戶編譯Buildroot根文件系統(tǒng),避免不必要的錯誤;

【注2】如果不想編譯文件系統(tǒng),也可直接從已有的鏡像中解壓后,將其拷貝到rockdev目錄下。

3. 打包固件

更新各部分鏡像鏈接到rockdev/目錄:

$./mkfirmware.sh

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

$./build.shupdateimg

pYYBAGMSvDmAPWV5AAFOa6zlTRA715.png

[PS]全自動編譯

全自動編譯會執(zhí)行上述編譯、打包操作,生成完整固件。

$./build.sh

3、分區(qū)說明

1. parameter 分區(qū)表

parameter.txt文件中包含了固件的分區(qū)信息,以parameter-buildroot.txt為例:

路徑:

device/rockchip/ok3568/parameter-buildroot-fit.txt

poYBAGMSvDmAEgtTAADBpmDKleA27.jpeg

CMDLINE屬性是我們關(guān)注的地方,以uboot為例,0x00002000@0x00004000(uboot)中0x00004000為uboot分區(qū)的起始位置,0x00002000為分區(qū)的大小,以此類推。

2. package-file

package-file文件用于打包固件時確定需要的分區(qū)鏡像和鏡像路徑,同時它需要與parameter.txt文件保持一致。

路徑:

tools/linux/Linux_Pack_Firmware/rockdev/rk356x-package-file

#NAME Relative path

#

#HWDEF HWDEF

package-filepackage-file

bootloader Image/MiniLoaderAll.bin

parameter Image/parameter.txt

#trust Image/trust.img

uboot Image/uboot.img

misc Image/misc.img

#resource Image/resource.img

#kernel Image/kernel.img

boot Image/boot.img

recovery Image/recovery.img

rootfs Image/rootfs.img

oem Image/oem.img

userdata Image/userdata.img

#要寫入backup分區(qū)的文件就是自身(update.img)

#SELF 是關(guān)鍵字,表示升級文件(update.img)自身

#在生成升級文件時,不加入SELF文件的內(nèi)容,但在頭部信息中有記錄

#在解包升級文件時,不解包SELF文件的內(nèi)容。

backup RESERVED

#update-script update-script

#recover-script recover-script

4、鏡像制作

編譯源碼可直接得到鏡像,但是編譯時間太長,有些部分不需要再次編譯,只需要從已有的鏡像中解包,然后再和新編譯的部分組合打包即可,下面是制作方法。

1. 工具安裝

下載工具包:

$git clone

https://github.com/TeeFirefly/rk2918_tools.git

進(jìn)入工具包目錄:

$cd rk2918_tools

編譯:

$make

pYYBAGMSvDmAYockAAAd-TOGOyY344.png

將可執(zhí)行文件拷貝到用戶二進(jìn)制目錄:

$sudo cp afptool img_unpack img_maker mkkrnlimg/usr/local/bin

2. 解包

將update.img拷貝到Ubuntu中,然后使用命令解包:

$img_unpack update.img img

poYBAGMSvDmAW7BJAAAdZzLL1BE766.png

解包到img目錄,img目錄會自動生成,解析成功之后,img目錄下會生成loader.img和update.img。

pYYBAGMSvDmATOKrAAAhBQ0PyO8912.png

接下來進(jìn)入到img目錄,使用afptool-unpack 解壓:

$afptool -unpack update.img update

poYBAGMSvDqABURKAAC-hNdr5nQ525.png

解壓到update目錄

打開update目錄,里面有很多img文件。

將需要的文件復(fù)制到rockdev目錄下。

3. 合成update.img

然后源碼目錄以下命令即可:

$./build.shupdateimg

poYBAGMSvDmAdP_mAADFZWfOq94893.png

感謝發(fā)燒友[ouxiaolong]提供本篇OK3568-C開發(fā)板試用體驗文章!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    134

    文章

    9282

    瀏覽量

    374034
  • 嵌入式
    +關(guān)注

    關(guān)注

    5127

    文章

    19463

    瀏覽量

    313643
  • 編譯
    +關(guān)注

    關(guān)注

    0

    文章

    674

    瀏覽量

    33664
收藏 0人收藏

    評論

    相關(guān)推薦
    熱點推薦

    從DeepSeek到Qwen,AI大模型的移植與交互實戰(zhàn)指南-嵌入式

    在不久前發(fā)布的《技術(shù)實戰(zhàn)|OK3588-C開發(fā)板上部署DeepSeek-R1大模型的完整指南》一文中,小編為大家介紹了DeepSeek-R1在
    的頭像 發(fā)表于 03-28 08:06 ?1242次閱讀
    從DeepSeek到Qwen,AI大模型的移植與交互實戰(zhàn)指南-<b class='flag-5'>飛</b><b class='flag-5'>凌</b>嵌入式

    【貝啟科技BQ3568HM開源鴻蒙開發(fā)板深度試用報告】系統(tǒng)鏡像編譯和燒錄

    于進(jìn)行圖形界面應(yīng)用的開發(fā)。貝啟科技BQ3568HM開源鴻蒙開發(fā)板配備了顯示屏,可以開發(fā)GUI應(yīng)用。 一、系統(tǒng)鏡像編譯 參考 BQ
    發(fā)表于 03-16 10:53

    OpenHarmony源碼編譯后燒錄鏡像教程,RK3566鴻蒙開發(fā)板演示

    本文介紹瑞芯微主板/開發(fā)板編譯OpenHarmony源碼后燒錄鏡像的教程,觸覺智能Purple Pi OH鴻蒙開發(fā)板演示。搭載了瑞芯微RK3566四核處理器,樹莓派卡片電腦設(shè)計,支持開
    的頭像 發(fā)表于 12-30 10:08 ?518次閱讀
    OpenHarmony<b class='flag-5'>源碼</b><b class='flag-5'>編譯</b>后燒錄鏡像教程,RK3566鴻蒙<b class='flag-5'>開發(fā)板</b>演示

    如何快捷使用瑞芯微RK3568J開發(fā)板

    。 硬件平臺:嵌入式RK3568/RK3568J 開發(fā)板 操作系統(tǒng):Linux、Android、Ubuntu 目錄 1、Linux設(shè)備樹
    發(fā)表于 12-19 16:18

    嵌入式OK3588J-C開發(fā)板體驗】OK3588J-C開發(fā)板開箱評測

    很高興收到嵌入式提供的OK3588J-C開發(fā)板,這是瑞芯微最新的8K旗艦8核SOC,非常適合用來做機(jī)器視覺,AI,語音識別,圖像處理。 下面來看看
    發(fā)表于 12-04 15:23

    嵌入式受邀亮相OpenHarmony人才生態(tài)大會

    出席,并展示了其在OpenHarmony 4.1系統(tǒng)適配方面的最新成果。 在大會的靜態(tài)展示區(qū)域,嵌入式攜兩款明星產(chǎn)品OK3568-C開發(fā)板OK
    的頭像 發(fā)表于 11-29 16:47 ?374次閱讀
    <b class='flag-5'>飛</b><b class='flag-5'>凌</b>嵌入式受邀亮相OpenHarmony人才生態(tài)大會

    迅為RK3568開發(fā)板定制擴(kuò)展分區(qū)SDK源碼編譯-獲取Linux-定制擴(kuò)展分區(qū)源碼

    、ubuntu24 環(huán)境均可在不進(jìn)行任何配置的情況下編譯編譯通過。 Linux-定制擴(kuò)展分區(qū)源碼網(wǎng)盤下載路徑:“iTOP-3568 開發(fā)板\
    發(fā)表于 11-25 10:24

    瑞芯微RK3568開發(fā)板Linux編譯報錯404怎么辦?觸覺智能教你輕松解決

    本文介紹瑞芯微RK3568主板/開發(fā)板SDK編譯流程和編譯報錯404的解決方法,使用觸覺智能EVB3568鴻蒙
    的頭像 發(fā)表于 11-05 11:02 ?665次閱讀
    瑞芯微RK<b class='flag-5'>3568</b><b class='flag-5'>開發(fā)板</b>Linux<b class='flag-5'>編譯</b>報錯404怎么辦?觸覺智能教你輕松解決

    [技術(shù)] 【嵌入式OK3576-C開發(fā)板體驗】llama2.c部署

    MCU 上部署。以下是 llama2.cOK3576 開發(fā)板上的部署步驟。 工程克隆 首先我們將源碼克隆下來:https://github.com/karpathy/llama
    發(fā)表于 09-18 23:58

    嵌入式OK3576-C開發(fā)板體驗】應(yīng)用編譯運行

    源碼需要下載的庫文件。 編譯前準(zhǔn)備 環(huán)境說明 開發(fā)環(huán)境操作系統(tǒng):Ubuntu24.04 64 位版 交叉工具鏈:aarch64-non-linux-gnu 開發(fā)板使用 Bootloa
    發(fā)表于 08-26 17:55

    嵌入式OK3576-C開發(fā)板體驗】開箱報告

    簡介 很榮幸參與到本次由嵌入式和電子發(fā)燒友提供的OK3576-C開發(fā)板的試用機(jī)會。 嵌入
    發(fā)表于 08-22 02:13

    嵌入式OK527N-C開發(fā)板體驗】- 1. 開箱

    周三左右就收到了快遞,一直忙其他的事情,沒時間弄這個,就拖到周末了。 首先發(fā)個開箱,記錄下。 外包裝,盒子比想象的要大不少。 附帶的產(chǎn)品手冊,里面有很多
    發(fā)表于 07-11 21:24

    嵌入式OK527N-C開發(fā)板體驗】- 開箱

    周三左右就收到了快遞,一直忙其他的事情,沒時間弄這個,就拖到周末了。 首先發(fā)個開箱,記錄下。 外包裝,盒子比想象的要大不少。 附帶的產(chǎn)品手冊,里面有很多
    發(fā)表于 06-30 23:04

    嵌入式FET3568/3568J-C核心現(xiàn)已適配OpenHarmony4.1

    核心賦予了更強(qiáng)大的功能,也為開發(fā)者們提供了更加廣闊的創(chuàng)新空間。FET3568/3568J-C核心作為
    的頭像 發(fā)表于 05-31 14:17 ?1019次閱讀
    <b class='flag-5'>飛</b><b class='flag-5'>凌</b>嵌入式FET<b class='flag-5'>3568</b>/<b class='flag-5'>3568J-C</b>核心<b class='flag-5'>板</b>現(xiàn)已適配OpenHarmony4.1

    在RK3568核心上實現(xiàn)USBNET模式網(wǎng)絡(luò)共享

    本文將借助嵌入式OK3568-C開發(fā)板為大家介紹實現(xiàn)USBNET模式的方法,在這之前需要先知道什么是USB Gadget——USB Gadget是指所
    發(fā)表于 05-22 16:32

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品