2017-11-05 25 views
0

, 레시피는 레시피 표시되는 XML 라인으로부터 추출 된 라이센스 포함 예 : , XMLRCPPLIC_FILES_CHKSUM은 Yocto에서 한 줄 일치에 어떻게 작동합니까? ROS 요리법

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

을하지만 동일한 라이센스 명이지만 다른 MD5 Ar-track-alvar 가지고

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

따라서 문자열이 동일하면이 MD5가 어떻게 계산됩니까?

편집 : @jku는 이유와 작동 방식을 설명했습니다. 간단한 설명은 두 번째 package.xml이 시작할 때 두 공백을 가지고 있다는 것입니다.

+0

필자가 알고있는 한, ** beginline ** 및 ** endline **은 파일 내에서 md5sum을 만드는 데 사용할 행을 정의하는 데 사용됩니다. 두 조리법 모두 자체적으로 제공하지만 아마도 동일한 package.xml을 제공합니다. 일치하는 경우 ** beginline **과 ** endline **가 다릅니다. 어쩌면 그걸 확인하고 다른 md5sum을 만들었는지 여부를 알려주십시오. –

+0

좋은 생각 이었지만 다른 조리법에는 BSD 라이센스와 다른 줄이 있고 모두 MD5로'd566ef916e9dedc494f5f793a6690ba5'을 가지고 있기 때문에 방해가되지 않습니다 –

답변

1

체크섬이 다른 경우 문자열이 동일하지 않습니다. 차이는 단지 공백이거나 저작권 기간이 다를 수 있습니다.

LIC_FILES_CHECKSUM의 목적은 라이센스가 실제로 그것이 주장한 바를 보장하는 것이 아닙니다 (사실상 가능하지 않기 때문에). 대신 레서피 버전이 업데이트 될 때 레시피 관리자가 알아 차리지 않고 라이센스가 변경되지 않도록합니다.

+0

감사합니다. 이 사건을 어떻게 설명 할 수 있니? –

+1

그래서, 문자열 중 하나가 실제로 2 칸 비어 있다는 것을 알았습니다. 나는 그것을 걸러 낼 것으로 예상했으나 그렇지 않았습니다. 어쨌든, 설명 주셔서 감사합니다. –