我经常在使用Yocto Project时遇到一个常见问题,就是确定为什么(或从哪个recipe)将文件包含在rootfs中。希望可以从构建系统的环境、日志和元数据中推导出来。理想情况下,一组命令将允许将文件链接回源(即recipe)。
我的常规策略是在元数据上执行搜索(例如grep -R filename ../layers/*
),并搜索这些文件名在互联网上以查找可能负责的recipe的线索。但是,这并不总是非常有效。在许多情况下,文件名并未明确说明在recipe中。此外,有许多情况下,一个文件名由多个recipes提供,这导致需要额外的工作来确定最终提供该文件的recipe。当构建系统应该拥有足够的信息使解决答案变得简单时,这种调查通常会很费力。