bb 檔案是一個 recipe , 但我們可能會額外後期再加上補丁 修改等等 , 就可以使用 append 檔案來做追加的需求
_0.1.bnappend
或者 _%.bbappend
, 0.1 為自訂的版本號 %為通用符,加不加都可。EX : test_0.1.1.bb -> bb 檔案
test_0.1.1.bbappend -> bbappend 檔案
test_%.bbappend -> bbappend 檔案
追加功能:通過 .bbappend 檔案,你可以在現有修改recipe中增加新的功能,例如,新增補丁或設置環境變數。
修改recipe:可以修改現有修改recipe中的變數或參數,如修改編譯選項、增加依賴等。
解決衝突:在不同的層之間協調recipe的版本,確保與其他層的兼容性。
自定義:根據專案的需求,對recipe進行特定的定制,而不影響原始recipe的維護。
通常會使用的時候應該是 當 bb 已經存在 , 但我們想要對他新增一些功能。
或者是 bb 是原先 BSP 所提供,為了好管理區分可以直接透過 bbappend 來追加修改。
假如我們想要修改的 recipe 所在位置如下
~/yocto/layers/meta-custom/recipe_test/test/test_0.1.bb
要記得如果自己建立 layer 的話要透過指令新增到 bblayers 檔案當中。
bitbake-layers add-layer <layer_name>
bitbake-layers add-layer meta-cusadd
SRC_URI += "file://my_patch.patch"
CFLAGS += "-DDEBUG"
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
DEPENDS += "extra-dependency"
可以透過下方指令看看有沒有生效
bitbake -e <recipe>
bitbake core-image-minimal
這邊要注意假如預設路徑沒有搜尋到的話,可能需要手動新增。