我有基于Yocto 1.7目标ARM的分发情况,我想在交叉编译GCC 4.9中应用补丁。
常规bbappend
覆盖机制不适用于GCC,这是"特殊"。
我有一个找到目标的gcc-cross_4.9.bbappend
文件;但在其他方面,它似乎并不存在。尽管删除了所有戳记文件以强制从do_unpack
,do_patch
和do_config
继续重建,但该补丁尚未应用。
答案 0 :(得分:3)
答案是:注意哪些包实际上受do_unpack
和do_patch
约束。它不是gcc-cross
或gcc
,而是gcc-source
。
gcc
的各个阶段和配置都共享gcc-source
虚拟包中的解包步骤;如果你定位那些有补丁覆盖的东西,没有任何反应,因为它们都没有执行任何解包和修补步骤。
这是一个gcc-source
- 基本名称.bb
文件,用于控制这些步骤。
因此,我只是重命名.bbappend
以定位gcc-source
名称并且它有效。
答案 1 :(得分:0)
我不知道你花了多长时间来调试它,但一个简单的方法是执行
bitbake-layers show-appends | grep gcc
您将直接查看yocto是否考虑了您的bbappend