4 가지 하위 프로젝트가있는 프로젝트가 있습니다. 버전을 지정하려면cmake로 라이브러리 버전 관리
SET(parent_VERSION_MAJOR 1)
SET(parent_VERSION_MINOR 0)
set(parent_VERSION_PATCH 0)
set(parent_VERSION 1.0.0)
을 사용하고 add_subdirectory가 사용되는 경우이를 하위 프로젝트에서 사용할 수 있습니다.
Q1. MAJOR, MINOR 및 PATCH를 기준으로 parent_VERSION을 설정할 수 없습니다. 문서에 따르면 자동으로 설정해야하지만 인쇄 할 때마다 코드의 마지막 줄을 사용하지 않고 비어 있습니다.
2. 하위 디렉토리에서만 빌드하려는 경우 오류 메시지가 표시됩니다.
CMake Error at CMakeLists.txt:28 (set_target_properties):
set_target_properties called with incorrect number of arguments.
이는 parent_VERSION을 사용하고 있기 때문입니다.
그래서 cmake를 최상위 디렉토리에서 실행하지 않고 parent_VERSION을 가져올 수 없다는 것을 이해하지만 최상위 레벨에서 실행하지 않고도 빌드 할 수 있도록 코드를 어떻게 변경합니까? 나는 inherited와 함께 SET
에 대해 읽었지만, 나는 그것이 내가 필요한 것이라고 생각하지 않는다.
나는'설정 할 경향 것 (parent_VERSION의 $ {parent_VERSION_MAJOR을}. $ {parent_VERSION_MINOR}. $ {parent_VERSION_PATCH})'변수 사이에 동기화 손실을 방지합니다. – Fraser