LIC_FILES_CHKSUM如何在Yocto中进行一线匹配?

时间:2017-11-05 12:09:19

标签: md5 licensing yocto

对于ROS配方,配方包含从XML中提取的许可证,并在配方中指示行: 例如,对于XMLRCPP

LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://package.xml;beginline=11;endline=11;md5=184dd1523b9a109aead3fbbe0b4262e0"

但是Ar-track-alvar具有相同的许可证名称,但具有不同的MD5:

LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://package.xml;beginline=10;endline=10;md5=061abe8dc89f326789675967c8760541"

因此,如果字符串相同,如何计算MD5?

编辑:@jku解释了原因及其工作原理。简单的解释是第二个package.xml在开始时有2个空格

1 个答案:

答案 0 :(得分:2)

如果校验和不同,则字符串不相同。差异可能只是空白或不同的版权年份。

LIC_FILES_CHECKSUM的目的不是确保许可证确实是它声称的(因为这实际上是不可能的)。相反,它用于确保许可证不会在没有配方维护人员注意到配方版本更新的情况下发生变化。