Yocto是部署调试还是发布预构建?

Yocto是部署调试还是发布预构建?,yocto,bitbake,Yocto,Bitbake,我正在编写bitbake配方,以部署第三方预构建工具,类似于此wiki页面: 但是,我有一个发布版和调试版的工具,可以作为*.so文件使用。我如何在配方中区分应该部署哪一种构建类型 感谢和问候, Martin您可以有两个不同的虚拟食谱,每个食谱都有自己的。因此文件。然后,这就保证在配置文件(使用首选\u提供者\u虚拟/my recipe)中进行选择,因此可以在计算机或发行版配置文件中进行选择。如果您考虑释放和调试DistRoS.< /P>,这可能是首选的。 第二种选择是在两个不同的包中以两种不同

我正在编写bitbake配方,以部署第三方预构建工具,类似于此wiki页面:

但是,我有一个发布版和调试版的工具,可以作为*.so文件使用。我如何在配方中区分应该部署哪一种构建类型

感谢和问候,
Martin

您可以有两个不同的虚拟食谱,每个食谱都有自己的
。因此
文件。然后,这就保证在配置文件(使用
首选\u提供者\u虚拟/my recipe
)中进行选择,因此可以在计算机或发行版配置文件中进行选择。如果您考虑释放和调试DistRoS.< /P>,这可能是首选的。 第二种选择是在两个不同的
包中以两种不同的路径安装库(使用
文件\u my-package
),并使它们彼此
RCONFLICTS\u my-package
,以确保它们不能都在rootfs中。之后,您可以编写一个特定于每个包的
pkg\u postinst\u my-package()
任务,实际将库从“不同”路径移动到预期路径。这将在创建rootfs时的构建时和第一次引导时的运行时运行,因此您需要确保排除其中一个(通常通过检查
${D}
是否存在来完成,这在构建时存在,但在运行时不存在)

c、 f:


如果您可以在rootfs中安装两个库,并使用
LIBRARY\u PATH
环境变量选择所需的库,那么一个简单的配方就足够了,每个库有两个包,位于不同的位置。

非常感谢您的详细解释!由于rootfs中的大小限制,我可能会选择第一个解决方案。实际上,第一个和第二个建议对您有效,而不是第三个:)