我遇到的问题是我使用的食谱不再定义变量libdir
。它似乎只有libdir_native
。
我使用的这个食谱Morty
来自openembedded
的{{1}},所以我假设食谱应该正常工作。
由于缺少libdir
变量,所有已安装的文件都没有被打包,这搞砸了我的构建。
在短期内,我已经能够通过创建一个append
文件来解决问题,这个文件会产生libdir = "${libdir_native}
,但这似乎不是必要的。
我唯一能想到的是Bitbake.conf
Bitbake
文件未被.conf
正确使用(或者使用了错误的contains[cd]
)。
任何建议都将不胜感激。
答案 0 :(得分:1)
根据评论,这似乎是问题:Poco上游将库安装到/ usr / lib /中,但是yocto包装要求它们在$ {libdir}中,这可能与/usr/lib/不同。 p>
最常见的原因(对于cmake食谱)是因为上游项目不支持CMAKE_INSTALL_LIBDIR。检查上游构建系统是否有一些替代方法来指定libdir - 这在cmake项目中非常常见。如果没有,您可以在上游构建系统中添加对CMAKE_INSTALL_LIBDIR的支持(并在您的配方中添加补丁)。
另一种方法是添加do_install_append()
来检查$ {libdir}是否不是/ usr / lib /,并将所有内容从$ {D} / usr / lib /移动到$ {D} $ {libdir}就此而言。