之路教程 https://onitr oad .com

运行时依赖

BitBake 使用 PACKAGES 和 RDEPENDS 变量来管理运行时依赖项。
PACKAGES 变量列出了一个配方创建的所有运行时包。
这些包中的每一个都可以具有 RDEPENDS 运行时依赖项。
这些是必须安装的软件包才能运行给定的软件包。
任务的 rdeptask varflag 指定在执行该任务之前必须为每个运行时依赖项完成哪些任务

Yocto中的 RDEPENDS 和 DEPENDS

为了满足依赖关系,配方必须声明它们在构建过程中需要可用的东西。
当应用程序依赖于要运行的东西时,它被称为运行时依赖(这些是目标上必需的包,以保证正常运行)。
在这种情况下,我们不需要在配方中设置 DEPENDS 变量,而是设置 RDEPENDS 变量以通知 BitBake。
所以简而言之,

DEPENDS -> Build Time Dependency
RDEPENDS -> Run Time Dependency

DEPENDS :当配方“A”依赖于配方“B”时。
在这种情况下,Bitbake 首先构建配方“B”,然后构建配方“A”。
例如,我们需要在 'wpa_supplicant' 之前构建 'dbus'。

RDEPENDS :当配方 'A' 是配方 'B' 上的 RDEPENDS 时。
在这种情况下,Bitbake 在部署“A”时会在目标系统上部署“B”。
例如,'perf' RDEPENDS on 'bash'

换句话说,DEPENDS 是那些在构建包时应该可用的包集,而 RDEPENDS 是在程序执行期间应该可用的包集。

构建时依赖

BitBake 使用 DEPENDS 变量来管理构建时依赖项。
任务的 deptask varflag 表示在执行该任务之前必须为 DEPENDS 中的每个项目完成的任务。

日期:2020-09-17 00:14:47 来源:oir作者:oir