作为为 InfluxDB-python 客户端创建配方的一部分。我将
requirements.txt
中的所有包添加到RDEPEND_${PN}
中,例如:
RDEPENDS_${PN} = " python3-requests python3-json python3-dateutil python3-six"
但是是否有必要在
local.conf
文件中添加上述依赖项,如下所示?:
IMAGE_INSTALL_append = " python3-six python3-dateutil python3-json"
是否
RDEPENDS
不安装相应?
RDEPENDS
表示运行时依赖。因此 do_rootfs
会自动将所有列为 RDEPENDS 的包添加到最终映像中。
您唯一应该考虑的是,您的包应该是您正在编译的映像的一部分。
例如,假设
core-image-minimal.bb
是最终图像的配方,您应该在此图像文件的 .bbappend
或 .bb
中的某个位置添加您的配方名称,例如 my-package.bb
。
构建
bitbake core-image-minimal
时,您的包my-package
及其运行时依赖项会自动添加。
就我而言,问题是 Yocto 的新版本具有新的
override
语法,
所以修复是:
-RDEPENDS_${PN} += "python3-json"
+RDEPENDS:${PN} += "python3-json"
为了检测问题,我将不存在的包添加到旧的
RDEPENDS_${PN}
中,但我仍然能够bitbake
它,所以它给出了一个线索,表明它没有在使用中。