Yocto:如何从包的RDEPENDS中删除/黑名单一些依赖?
我有一个基于
https://github.com/jumpnow/meta-wandboard的自定义机器层.
我已将内核升级到4.8.6,并希望将X11添加到图像中. 我意识到这些依赖关系是使用meta-fsl-arm BSP和vanilla Poky发行版创建的.但是这些东西对于wandboard来说已经过时了,因此我使用了具有现代内核的自定义机器层. 有没有办法将其从RDEPENDS中排除?我可以以某种方式向构建系统发誓,我会自己处理这种特定的运行时依赖吗? 我已经尝试在我的local.conf中设置黑名单’kernel-module-imx-gpu-viv’设置PNBLACKLIST [kernel-module-imx-gpu-viv],但这只是解决方案的一部分.它有助于避免构建失败,但打包过程仍然失败. 解决方法
你问题的IIUC来自
img-gpu-viv recipe这些行:
FILES_libgal-mx6 = "${libdir}/libGAL${SOLIBS} ${libdir}/libGAL_egl${SOLIBS}" FILES_libgal-mx6-dev = "${libdir}/libGAL${SOLIBSDEV} ${includedir}/HAL" RDEPENDS_libgal-mx6 += "kernel-module-imx-gpu-viv" INSANE_SKIP_libgal-mx6 += "build-deps" 我实际上将此RDEPENDS限定为错误,通常将内核模块依赖项指定为RRECOMMENDS,因为大多数模块都可以编译到内核中,因此在提供功能时根本不会创建单独的包.但这是另一个问题. 有几种方法可以解决这个问题,第一种方法是调整包的RDEPENDS.它只是一个bitbake变量,因此您可以使用assign it some other value或remove some portion of it.在第一种情况下,它看起来有点像这样: RDEPENDS_libgal-mx6 = "" 在第二个: RDEPENDS_libgal-mx6_remove = "kernel-module-imx-gpu-viv" 显然,这两个选项对您现在和将来的工作有不同的含义.一般来说,我会选择较软的,这是第二次,因为当你要更新meta-fsl-arm层时,它可能会有更少的破损,这可以以任何方式改变imx-gpu-viv配方.但是当你用变量中的大列表覆盖一些更复杂的配方并且你正在大量修改它(不只是删除一两件事)时,通过完全硬分配变量来维护它可能更容易. 现在还有一个问题,即如何进行变量修改.主要选项是 但是对于这个问题也有一种完全不同的方法,而不是修复包依赖关系,你也可以修复some other package provides.例如,你有一个内核配置为在主zimage内置imx-gpu-viv模块你可以做 RPROVIDES_kernel-image += "kernel-module-imx-gpu-viv" (也在.bbappend,发行版配置或local.conf中)就是这样. 无论如何,您解决此问题的方法应反映您的设置和配方假设之间的差异.如果你有模块,但是在另一个软件包中,那么选择RPROVIDES,如果你有一些其他模块提供与libgal-mx6软件包相同的功能,那么修复libgal-mx6依赖项(并且最好修复它们,这意味着不仅仅是删除你不需要的东西,但也添加与你的设置相关的东西. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- flex与html交互和js调用
- postgresql – Alembic:使用USING改变列类型
- iphone – iOS中的Access Settings应用程序
- Oracle/MySQL decimal/int/number 转字符串
- ruby-on-rails – PostGIS错误 – PG :: InternalError:ER
- React-Native系列Android——Native与Javascript通信原理(
- postgresql – 如何在JSONB列上获取值的SUM
- 正则表达式的资源和工具汇集(上)
- ruby-on-rails – 编辑Rails脚手架类以添加新字段
- OERR: ORA-65040