我已经在我的 Yocto 构建服务器主机上安装了 bbe,二进制块编辑器。如果我在使用它时限定它的完整路径,我可以在我的图像 bitbake 配方中使用它,这是一个示例。
BBE_BIN = "/usr/bin/bbe"
modify_foobar_file() {
${BBE_BIN} -e 's/Some string/New string' foobar > ${WORKDIR}/foobar.modified
}
我不想每次使用拉路径时都必须对其进行限定。我怎样才能实现这个目标?
我想到了两种可能的解决方案。在其中一个例子中,我想象了类似于我需要在菜谱函数中使用openssl
所做的事情,即声明对本机 openssl 包的构建时间依赖性,如下所示
DEPENDS = "openssl-native"
。另一方面,也许我可以摆弄 bitbake 环境 PATH,以便它可以在构建过程中找到
bbe
命令。
DEPENDS="bbe-native"
。这意味着您不必在设置新机器时记住安装此工具,无需记录该工具,您可以控制升级周期,并且如果您正在制作商业产品,您实际上可以获得它包含在许可证和发布清单中。可怕的黑客是将其添加到
HOSTTOOLS
。