如何在 bitbake 中使用 DEPENDS

How to use DEPENDS in bitbake

我有一个 bitbake 构建环境,其中包含多个配方,这些配方在链中相互依赖。

目前我要做的事情:bitbake recipe1 && bitbake recipe2

我添加了:DEPENDS = "recipe1" 到 meta-recipe2/recipe2.bb

bitbake-layers show-cross-depends 显示此依赖关系。

因此我希望 运行 bitbake recipe2 首先构建 recipe1,但它没有。

我需要做什么来构建在 DEPENDS 变量中侦听的依赖项?

通过

recipe1添加到recipe2
DEPENDS += "recipe1"

应该适合你。上面这行表示在 recipe2do_configure 任务可以 运行 之前,mrecipe1 的任务 do_populate_sysroot 将已经完成。这应该适用于所有版本的 bitbakeOpenEmbedded.

您可以通过

实现类似于DEPENDS += "recipe1"的效果
do_configure[depends] += "recipe1:do_populate_sysroot"

如有必要,您可以像这样手动设置自己的自定义依赖。

事实是

DEPENDS += "recipe1"

几乎总是有效,但总是有效。因为它绑定到 do_configure 可能不会在其他图像中调用,例如 initramfs 图像。

因此,对于这些情况,最好绑定到使用的任务,

do_rootfs[depends] = "my-initramfs-image:do_image"