有人告诉我RRECOMMENDS和RDEPENDS的区别

时间:2013-01-09 15:36:13

标签: bitbake

我很少使用RRECOMMENDS,我不知道它的实际用途是什么。好像 只安装一个包..

-RDEPENDS_${PN} = "kernel-module-tun"
+RRECOMMENDS_${PN} = "kernel-module-tun"

有谁可以解释上面两行代码之间的区别?

RRECOMMENDS安装kernel-module-tun吗?如果不是那么它用于什么?

1 个答案:

答案 0 :(得分:8)

我会试试。这两个变量都定义了配方依赖性。

-RDEPENDS_${PN} = "kernel-module-tun"

RDEPENDS是一种硬的运行时依赖。所以列出的任何内容都扩展了它适用的功能,但必须安装才能使包正常运行。如果列出的包不存在或尚未构建,则依赖包仍可以成功构建。 YoctoProject参考手册包含对此变量的一个很好的描述。请参阅Reference Manual

+RRECOMMENDS_${PN} = "kernel-module-tun"

RRECOMMENDS是一种软的运行时依赖。因此,列出的任何内容都会扩展其应用的功能,但不是构建的要求。您可能希望在YoctoProject参考手册中查找更多关于RRECOMMENDS的怪癖,这些资料似乎是目前此类材料的最佳资源:Reference Manual

因此,要回答您的问题,RRECOMMENDS会安装kernel-module-tun(如果有)。如果不是,则构建将继续。相反的情况是使用RDEPENDS语句,如果找不到kernel-module-tun,则会在构建过程中导致错误。