C 코드에서 CMake 변수에 액세스
CMake를 사용할 때 자주 사용하는 값을 변수로 저장하면 도움이 될 수 있습니다. 그러나 C 소스 코드 내에서 이러한 변수에 액세스하는 것은 어려울 수 있습니다.
C에서 CMake 변수를 사용하는 한 가지 접근 방식은 add_definitions 함수를 활용하는 것입니다. 이 기술을 사용하면 변수를 전처리기 정의로 전달할 수 있습니다.
<code class="cmake">add_definitions(-DVERSION_LIBINTERFACE=${LIBINTERFACE_VERSION})</code>
이후 C 코드에서 변수는 전처리기 매크로로 액세스할 수 있습니다.
<code class="c++">#if defined(VERSION_LIBINTERFACE) unsigned int libInterfaceVersion = VERSION_LIBINTERFACE; #endif</code>
또는 다음을 활용할 수 있습니다. 필요한 변수 대체를 포함하는 헤더 파일 템플릿을 생성하는 구성_파일 명령. 예를 들어, version_config.h.in이라는 템플릿 파일을 생성합니다.
<code class="c++">#ifndef VERSION_CONFIG_H #define VERSION_CONFIG_H #define VERSION_LIBINTERFACE @LIBINTERFACE_VERSION@ #endif</code>
CMakeLists.txt 파일 내에서 구성 파일 지시문을 활용합니다.
<code class="cmake">configure_file(version_config.h.in ${CMAKE_BINARY_DIR}/generated/version_config.h) include_directories(${CMAKE_BINARY_DIR}/generated/)</code>
생성된 헤더 파일이 해당 소스 파일에 포함되어 있습니다.
위 내용은 C 코드에서 CMake 변수에 액세스하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!