Yocto bitbake를 사용하여 lib를 빌드할 때 "-dev 패키지 mylib-dev에 non-symlink가 포함되어 있습니다" 오류가 발생함

Yocto bitbake를 사용하여 lib를 빌드할 때 "-dev 패키지 mylib-dev에 non-symlink가 포함되어 있습니다" 오류가 발생함

Yocto 프로젝트를 사용하여 Linux 배포판을 구축하려고 합니다. 대상 보드는 STMicroelectronics에서 OpenSTLinux용으로 제공하는 배포 패키지와 메타데이터를 사용하고 있습니다.

내 배포판에 cmake 기반 C++ 라이브러리를 추가하고 싶습니다.

다음 명령을 사용하여 레시피를 만들었습니다.

devtool add --no-same-dir ../pass/to/mylib

그런 다음 다음을 사용하여 빌드하십시오.

bitbake mylib

빌드가 완료되었지만 do_package_qa를 통해 이 오류가 발생합니다.

"do_package_qa: QA Issue: -dev package mylib-dev contains non-symlink .so '/usr/lib/mylib.so' [dev-elf]"

이 오류가 발생하는 이유와 해결 방법은 무엇입니까?

답변1

~에 따르면Yocto 문서, 문제의 원인은 내 라이브러리가 버전 관리 대상이 아니기 때문입니다. 따라서 이 문제를 해결하려면 다음에 언급된 프로세스를 따라야 합니다.문서또는 내 라이브러리 버전을 지정하세요. 그래서 CMakeLists.txt 파일에 다음 줄을 추가하여 mylibrary에 버전을 추가했습니다.

set_target_properties(MyLib 속성 버전 ${PROJECT_VERSION} SOVERSION ${PROJECT_VERSION_MAJOR})

관련 정보