基於 OE 構建單一工具包

前面有講解了 OE 開發環境的搭建以及基本使用:https://blog.csdn.net/engrossment/article/details/105866276

在此基礎上,下面以 vim 工具的構建進行舉例說明。開發環境中有各種各樣的工具包,搜索確認有 bb 文件配置好即可輕鬆進行構建。

開發環境中已經有 vim 的 bb 文件寫好:

tisdk/sources/meta-openembedded/meta-oe/recipes-support/vim/vim_8.0.0022.bb

所以,在 build 目錄中做好初始化,執行 bitbake 即可構建 vim:

MACHINE=am335x-evm bitbake vim

有一個問題是,vim 這個 bb 包含的內容很多,我們可以按需配置構建。使用的特性是 package-split。這裏我們如果單獨想要 vim 包裏的 xxd 工具,就要對 bb 文件進行修改,以下是修改前後的 diff:

-PACKAGES =+ "${PN}-common ${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-tools"
+PACKAGES =+ "${PN}-xxd ${PN}-common ${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-tools"
+FILES_${PN}-xxd = "${bindir}/xxd"

注意,${PN}-xxd 需配置在前面,以免其他工具包已包含該工具,不會單獨生成。然後執行構建:

MACHINE=am335x-evm bitbake vim

構建完成後,在以下目錄就分別生成了 xxd 的可執行文件和 ipk 安裝包。ipk 安裝包可以放到板卡文件系統中用 opkg install 進行安裝。

build/arago-tmp-external-linaro-toolchain/work/armv7ahf-neon-linux-gnueabi/vim/8.0.0022-r0/packages-split/vim-xxd

build/arago-tmp-external-linaro-toolchain/work/armv7ahf-neon-linux-gnueabi/vim/8.0.0022-r0/deploy-ipks/armv7ahf-neon

2020年5月7日

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章