7

我在 Yocto 的哪里指定 BB_STRICT_CHECKSUM = "0" 禁用源代码的校验和检查?

我得到:

ERROR: No checksum specified for /PATH/TO/ti-linux-kernel.git, please add at least one to the     recipe:
SRC_URI[md5sum] = "e8e287fd725bea8b4220ebe9094cda86"
SRC_URI[sha256sum] = "4a4f522b05e6c1fcd1872f2fc7c82061dfdc4a19c5f866858005daa198f89bbb"
4

3 回答 3

14

关于这个页面BB_STRICT_CHECKSUM是一个可以在 .bb 文件中使用的变量。因此,您只需将以下行添加到您SRC_URI已在其中设置的相应 .bb 文件中,以避免校验和检查错误:

BB_STRICT_CHECKSUM = "0"

通过添加此行校验和检查错误(说:没有为 blah/blah/blah 指定校验和,请在配方中添加至少一个或另一个错误说:缺少SRC_URI校验和)将不再破坏编译过程,只是一个警告将被抛出。

希望能帮助到你

于 2016-01-15T02:29:39.107 回答
10

我在 Yocto 文档中没有看到名为 BB_STRICT_CHECKSUM 的变量。

据我所知,您不需要SRC_URI[...]为 git 存储库指定校验和。在你的 bitbake 食谱中,前面/PATH/TO/ti-linux-kernel.git有一个吗?git://Bitbake 使用它来确定要使用的 SCM 工具的类型。如果你想通过 http 访问一个 git repo,你可以指定

SRC_URI = "git://server.com/PATH/TO/ti-linux-kernel.git;protocol=http"

令人发指的是,这仅在SRC_URI的文档中有所暗示。

SRC_URI[md5sum] 和 SRC_URI[sha256sum] 旨在确保下载的 tarball 与您编写配方时的相同。如果您要添加 tarball(例如http://server.com/path/to/some-project.tar.gz),推荐的方法是

...注释掉这些语句,然后尝试构建软件。构建将为每个缺少的校验和产生一个错误,并作为错误消息的一部分提供正确的校验和字符串。一旦您拥有正确的校验和,只需将它们复制到您的配方中以进行后续构建。

您可以在错误消息中看到,在这种情况下,它们确实已提供。

于 2014-10-06T22:34:33.773 回答
1

如果您使用https: //some_path 克隆存储库,您将需要

SRC_URI[md5sum] = "e8e287fd725bea8b4220ebe9094cda86"
SRC_URI[sha256sum] = " 4a4f522b05e6c1fcd1872f2fc7c82061dfdc4a19c5f866858005daa198f89bbb"

当您使用git克隆 repo 时: //some_path 您将需要任何其他文件的 md5sum,例如

LIC_FILES_CHKSUM = "file://LICENSE;md5=a77c327d4d1da3707d42dde9725d4769"
于 2015-05-25T10:29:40.923 回答