当 shell 脚本内置在 bitbake 中时会发生什么

当 shell 脚本内置在 bitbake 中时会发生什么

我只是想了解bitbake构建系统。我对 shell 函数/任务如何执行有疑问。我正在查看以下文档https://docs.yoctoproject.org/bitbake/

在文档的一部分中,它说 shell 脚本是由/bin/sh.在文档的另一部分中,它说“BitBake 将 shell 脚本写入 ${T}/run.do_taskname.pid,然后执行该脚本”。

什么是run.do_taskname.pid?它到底有什么作用?当bitbake遇到 shell 脚本时到底会发生什么?

答案1

您可能已经读过,构建过程有如下步骤拿来,打开包装,修补,配置,编译,部署还有很多。每个步骤都作为 shell 脚本执行。

如果您查看构建文件夹,tmp/work/<system>/<package>/<version>/temp您会发现上述脚本,例如run.do_fetch带有和不带有点附加进程 ID 的脚本。

在平常的生活中,你根本不关心。但是,一旦您编写了自己的食谱,或者只是添加了自己的一些补丁,则.bbappend失败并出现奇怪的消息,这可能有助于了解该步骤中实际执行的内容。

在内部,这些文件帮助构建系统跟踪任何更改后要再次执行的内容。

相关内容