是否有一种通用的方法来创建提供相同软件的 Bitbake 配方的多个(略有不同)变体?

问题描述 投票:0回答:0

同一个(自定义)软件我有多个变体。一些变体支持不同的硬件平台,而其他变体支持相同的硬件平台但具有不同的功能集。例如我有:

mysoftware.bb (basic version)
mysoftware-qt.bb (basic + qt support)
mysoftware-lic.bb (basic + license support)
mysoftware-qt-lic.bb (basic + license + qt support)

我的计划是将 PROVIDES = "mysoftware" 添加到所有这些食谱中,并将 PREFERRED_PROVIDER_mysoftware = "mysoftware-qt" 添加到我的机器配置文件中。 在我的图像配方中,我想添加:

IMAGE_INSTALL += "mysoftware"

出现了很多错误……就像我必须在每个食谱中设置 RPROVIDES_${PN} = "mysoftware" 并且必须在那些食谱中设置 SSTATE_DUPWHITELIST = "/" 一样。 (仍然没有工作......)

我的问题:有没有标准的方法来实现这个目标?或者这是一种不好的做法?这对我来说似乎是一个不错的方法。

我最后想做的是: IMAGE_INSTALL = "... mysoftware" 这将安装适当的变体,我不必这样做:

IMAGE_INSTALL_xhw = "... mysoftware-x"
IMAGE_INSTALL_yhw = "... mysoftware-y"

对于那些我必须从 mysoftware 更改为 mysoftware-qt 的非常有限的次数,我可以使用包管理器安装它(在我的例子中是 apt):

apt install mysoftware-x-qt

因此冲突的 mysoftware-x 将被删除并且 mysoftware-x-qt 将被轻松安装。

yocto bitbake yocto-recipe
© www.soinside.com 2019 - 2024. All rights reserved.