BitBake devtool执行update-recipe未生成.bbappend文件问题
问题成因
devtool update-recipe的默认检测逻辑是扫描工作区内对应组件的源码目录变更,只有检测到源码文件改动时,才会自动生成补丁文件、配套创建.bbappend文件同步改动。
你本次修改仅调整了配方层面的configure配置参数,全程没有修改源码工作区下的任何文件,工具判定不存在需要同步的源码补丁/本地源文件改动,因此返回提示:
INFO: No patches or local source files needed updating
该表现属于工具的正常逻辑,不是操作故障。
正确操作方案
可根据实际需求选择对应处理方式:
- 手动创建
.bbappend留存配置(纯配方参数调整场景下的首选方案)- 在自定义元数据层下,创建和原
alsa-utils配方匹配的路径层级,即recipes-multimedia/alsa-utils/目录 - 在该目录下新建命名为
alsa-utils_%.bbappend的文件,写入新增的配置项,调整状态目录到/etc的配置写法参考:EXTRA_OECONF:append = " --with-statedir=/etc" - 执行命令清理缓存后重新构建,验证配置生效:
bitbake -c cleansstate alsa-utils bitbake alsa-utils
- 在自定义元数据层下,创建和原
- 通过devtool命令强制同步配方改动到指定层
如果要沿用devtool流程同步修改,执行update-recipe时需要加-m参数指定要写入改动的自定义层,命令格式如下:
由于没有修改源码,执行后不会生成补丁文件,只会在指定层生成对应devtool update-recipe -m <你的自定义层路径/层名> alsa-utils.bbappend保存修改的configure配置,属于正常现象。改动同步完成后,执行devtool reset alsa-utils清理工作区的临时构建副本,即可回归正常构建流程。
内容的提问来源于stack exchange,提问作者jnugen
相关产品推荐
相关产品推荐

