2

我想跟踪使用 yocto-build-system 创建的“构建”。经过一番搜索,了解了 yocto-project 提供的“buildhistory”功能。

他们说,为了启用“buildhistory”,我们需要执行以下操作:

编辑 .../build/conf/local.conf 并添加:

INHERIT += "buildhistory"
BUILDHISTORY_COMMIT = "1"

然后重新运行“bitbake”来初始化 buildhistory 目录。

我做了同样的事情,但我无法找到 buildhistory 目录。

谁能告诉我,如何使用这个“构建历史”,以及如何查看构建差异?

4

1 回答 1

5

它将在 ${TOPDIR} 中创建 buildhistory 目录,该目录指向您的构建目录。除非您指定了其他内容,否则构建目录通常是构建目录。

您可以自己进入 buildhistory 目录,并使用 git (gitk, ti​​g),但通常留在 ${TOPDIR} 中并运行例如更方便

buildhistory-diff

您是否检查过文档:http ://www.yoctoproject.org/docs/1.6/ref-manual/ref-manual.html#maintaining-build-output-quality ?

当您启用 buildhistory 时,您将在 buildhistory 目录中获得几个目录“images”和“packages”以及一个文件 metadata-revs。(并且还应该有 .git 目录)。在这些目录中,buildhistory 将通过在每个 bitbake 命令之后将所有更改提交到其存储库来保留所有更改。除其他外,包版本和修订、安装在图像中的包、大小等都被跟踪。这一切都在文档链接中进行了概述。

尝试将 IMAGE_INSTALL_append="some-package" 添加到 local.conf,然后buildhistory-diff在对图像进行位烘焙后运行。这应该告诉您一个包已添加到图像中。

您也可以进入 buildhistory 目录并运行git log, gitk, 或tig在那里查看提交的内容。

如果仍然没有得到任何输出,请将 buildhistory 目录的树结构粘贴到 pastebin。

于 2014-12-19T13:44:05.710 回答