各個(gè)嵌入式開發(fā)團(tuán)隊(duì)出于不同的原因,都希望構(gòu)建適合自己開發(fā)需求的嵌入式系統(tǒng)。Yocto正是這樣一個(gè)工具,任何一個(gè)廠商都可以根據(jù)Yocto定制自己的系統(tǒng)。
Yocto 是什么
Yocto 是一種傘式項(xiàng)目,側(cè)重于通過開放式嵌入內(nèi)核,打造嵌入式系統(tǒng) Linux 發(fā)行版,而不受硬件架構(gòu)的限制。Yocto 本身并非發(fā)行版,而是幫助您構(gòu)建Linux發(fā)行版的框架。Yocto 已然成為必可不少的首選工具。開發(fā)人員和嵌入式系統(tǒng)制造商可以根據(jù)其自身硬件和軟件限制以及實(shí)際應(yīng)用程序,度身打造最適合自己的 Linux 版本。
更重要的是,Yocto 內(nèi)置各種現(xiàn)有工具,擁有大量的開源支持,以靈活多變的特點(diǎn)而聞名。豐富的工具、維護(hù)、模板和社區(qū)產(chǎn)品,可以幫助您完成各種無與倫比的特殊構(gòu)建任務(wù)。
Yocto 三大關(guān)鍵組件
?BitBake ——實(shí)質(zhì)上就是 Yocto 的構(gòu)建系統(tǒng)引擎。它負(fù)責(zé)創(chuàng)建配方——構(gòu)建特定系統(tǒng)所需的任務(wù)列表——以及解析元數(shù)據(jù)和執(zhí)行配方。
對如何分解并加速BitBake構(gòu)建進(jìn)程感興趣的開發(fā)者,可預(yù)約Incredibuild最新活動(dòng)
?OpenEmbedded-Core ——元數(shù)據(jù)。它保存了創(chuàng)建系統(tǒng)所需的基本配方、相關(guān)文件和類。構(gòu)建時(shí)設(shè)定為通用,以便適用于各種基于 OpenEmbedded 的系統(tǒng)。
?Poky ——包含一個(gè)基于 Linux 的全平臺(tái)構(gòu)建工具和各種其他技術(shù),幫助各大團(tuán)隊(duì)以可靠的方式快速地開發(fā)新系統(tǒng)。Poky 基于各種架構(gòu)生成文件系統(tǒng)鏡像。其中的典型示例就是 QEMU全系統(tǒng)仿真,一種極其出色的嵌入式軟件測試平臺(tái)。
Yocto 構(gòu)建工作流
Yocto 也支持其他關(guān)鍵組件(例如 QT、Chromium、LLVM 等)內(nèi)置到嵌入式發(fā)行版中,這也是它極受歡迎的原因之一。
為什么選擇 Yocto
盡管 Yocto 操作更復(fù)雜,但它也有很明顯的優(yōu)勢。
用戶群體廣泛,開發(fā)社區(qū)活躍,由Linux基金會(huì)出資扶持。
可以實(shí)現(xiàn)曾層級,用于各種任務(wù),高度定制化,可添加特殊功能,自定義瀏覽器等。
在同類項(xiàng)目中,可以兼容的設(shè)備最多,可以添加大量的 SDK、工具和功能。
正是有了這些要素,Yocto 實(shí)現(xiàn)了高度可定制,同時(shí)還擁有強(qiáng)勁的支持,對于希望定制構(gòu)建嵌入式系統(tǒng)的開發(fā)人員來說非常友好。
Yocto的缺點(diǎn)
即便如此,Yocto 也有一些缺點(diǎn)。一方面,入門時(shí)的學(xué)習(xí)曲線稍微有點(diǎn)陡峭。對于時(shí)間有限的小型單個(gè)項(xiàng)目或小型團(tuán)隊(duì)來說,使用這個(gè)工具可能意義不大。另一方面,Yocto 的構(gòu)建時(shí)間很長。這就降低了迭代頻率,如用在時(shí)間緊迫的項(xiàng)目中,效果可能會(huì)不太理想,但借助類似 Incredibuild這樣的加速工具可大幅提速開發(fā)進(jìn)程。
在Yocto體系中BitBake是非要重要的概念,另外由于Yocto項(xiàng)目構(gòu)建且復(fù)雜,如何正確運(yùn)用sstate緩存尤為重要。Incredibuild旗下技術(shù)社區(qū)IncrediClub將在7月14日發(fā)布嵌入式開發(fā)Yocto專題線上研討會(huì),正在使用Yocto或者計(jì)劃使用Yocto的開發(fā)者可以報(bào)名參與(技術(shù)分享無收費(fèi))
原文標(biāo)題:Yocto,嵌入式開發(fā)者不可不知的強(qiáng)大工具【附資料與活動(dòng)】
文章出處:【微信公眾號:strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
-
嵌入式系統(tǒng)
+關(guān)注
關(guān)注
41文章
3595瀏覽量
129548 -
瀏覽器
+關(guān)注
關(guān)注
1文章
1028瀏覽量
35397 -
yocto
+關(guān)注
關(guān)注
0文章
8瀏覽量
5298
發(fā)布評論請先 登錄
相關(guān)推薦
評論