我对Yocto还是很陌生,所以很抱歉这个问题很明显。我正在尝试为具有OpenCL支持的i.MX6构建图像以使用GPU。我的图像配方中包含gpu驱动程序配方(imx-gpu-viv),并且可以看到它已成功编译。但是,我的最终映像没有某些库,例如libOpenCL.so。我可以看到它们以.rpm软件包的形式存在于tmp / deploy / rpm中,并且我尝试使用设备中的rpm命令将它们添加到系统中。但是,它们还有其他依赖性,我不想搜寻它们所依赖的每个软件包以及它们的依赖性等。此外,我希望在以后的映像中安装这些软件包,而不想花时间一次又一次地安装它们。
有什么方法可以将以.rpm文件存储的软件包包括在bitbake创建的sdcard映像中?
编辑:为澄清我的问题,我知道可以通过使用local.conf中的IMAGE_INSTALL_append将配方添加到图像中。该特殊图像不需要包含配方“ imx-gpu-viv”,因为它已添加到源图像文件中。
答案 0 :(得分:0)
当我意识到食谱和包装是完全独立的东西之后,就设法解决了我的问题,有关here的更多信息。
imx-gpu-viv配方确实在libOpenCL-imx包中编译了libOpenCL.so。但是,我的映像没有在包libOpenCL-imx上包含RDEPEND的任何配方,因此它不包含在rootfs中。我创建了一个新的软件包组配方,该软件包组对我想要的库(例如RDEPENDS_${PN} += " libopencl-imx "
)具有RDEPENDS_ *命令,并且在将新的软件包组添加到映像配方并重建映像后,请求的库包含在我的rootfs中。