[英]How bitbake searches for recipe in build process?
我試圖找出 bitbake 如何在構建過程中搜索配方? 例如,我有一個類似下面的食譜:
DESCRIPTION = "PetaLinux GSTREAMER supported packages"
inherit packagegroup
GSTREAMER_PACKAGES = " \
gstreamer1.0 \
gstreamer1.0-python \
gstreamer1.0-meta-base \
gstreamer1.0-plugins-base \
gstreamer1.0-plugins-good \
gstreamer1.0-plugins-bad \
gstreamer1.0-rtsp-server \
gst-shark \
gstd \
gst-perf \
gst-interpipes \
"
GSTREAMER_PACKAGES_append_zynqmp = " gstreamer1.0-omx"
RDEPENDS_${PN} = "${GSTREAMER_PACKAGES}"
當我在yocto層搜索gstreamer1.0相關recipe時,我發現了兩個recipe,一個是meta層的gstreamer1.0_1.16.1.bb ,另一個是meta-petalinux層的gstreamer1.0_%.bbappend 。
這兩個層都被添加到bblayers.conf文件中的BBLAYERS中,並且在相關層的 layer.conf 文件中用BBFILE_PRIORITY_ * 指定的優先級是相同的。
那么,在這種情況下,構建過程中將使用哪個配方? yocto 中的食譜查找規則是什么?
我改變了一些東西來理解行為:例如,
你能幫我理解這種行為嗎?
謝謝。
您有兩個不同的文件:一個.bb
和一個.bbappend
。
.bb
是一個(或多個)包的基本配方。 它通常描述如何為您的目標獲取、配置、編譯、安裝 package 中的文件。
.bbappend
文件是一個“附加”文件。 它允許一個元(這里是 meta-petalinux)修改另一個元中的現有配方而不復制它。 .bbappend
可以修改 bb 文件的任何步驟:獲取源、配置、編譯、安裝...
例如,您可以創建自己的 Gstreamer bbappend,以啟用 pango(在我的 Yocto 上默認禁用)。 bbappend 文件名是gstreamer1.0-plugins-base_%.bbappend
並且只包含PACKAGECONFIG_append = "pango"
Yocto 手冊可以在此處為您提供有關 bbappend 文件的更多信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.