Publié le

cmake install 예제

라이브러리를 사용하려면 헤더 파일, 도구 실행 파일 및 빌드된 라이브러리만 설치하면 됩니다. 이 작업은 install() 명령을 사용하면 매우 간단한 방법으로 수행할 수 있습니다. 그것은 단순히 ${CMAKE_INSTALL_PREFIX} (/usr/로컬/리눅스에서) 터미널에서 cmake 설치 명령을 입력할 때 에 파일을 복사 합니다. 내보내기 옵션은 설치된 대상 파일을 내보내기와 연결합니다. 런타임, 라이브러리 또는 아카이브 옵션 앞에 나타나야 합니다. 실제로 내보내기 파일 자체를 설치하려면 아래에 설명된 install(EXPORT)를 호출합니다. 해당 my_library.cmake 파일을 포함하는 my_library-config.cmake라는 파일을 정의합니다(위의 복사-붙여넣기만 참조). 또한 버전 호환성 검사에 대해 위와 유사한 my_library-config-version.cmake.in 정의합니다. 우리가 소스에 파일을 가지고 우리가 설치하려고하는 디렉토리를 구축 할 수 있다고 가정 해 봅시다.

이 파일은 다음과 같습니다 파일1.h, file2.h, file3.h, file4.hxx, file5.txt, 및 file6.cmake. file1.h, file2.h, file4.hxx 및 file5.txt가 소스 트리에 있고 다른 모든 파일은 빌드 트리에 있다고 가정합니다. config.hpp.in #cmakedefine01 또는 이와 유사한 옵션을 통해 사용할 수 있는 몇 가지 옵션을 정의합니다. 그러나 우리는 그것을 설치하고 find_package()를 지원하려고합니다. 이제 평소와 같이 target_link_library()에서 라이브러리를 대상으로 사용하기 위해 포함해야 하는 my_library.cmake 형식이 있습니다. 그러나 포함(/경로/설치/설치/my_library-1.0/디버그/my_library.cmake) 문을 추가하기 전에 패키지 지원을 사용하도록 설정하여 자동화해 보겠습니다. find_package (my_library …)를 작성하는 경우 ${CMAKE_INSTALL_PREFIX}/lib (다른 많은 사람들 중)에서 my_library_library*라는 디렉토리에서 my_library-config.cmake라는 파일을 찾습니다. 한 가지 좋은 터치는 설치된 라이브러리의 버전 호환성 검사입니다. 이것은 또한 find_package()에 의해 지원됩니다, 당신은 두 번째 인수로 버전을 제공 할 수 있습니다.

다른 생성기를 사용하려면 -G 매개 변수를 사용하여 cmake에 전달합니다: 그리고 설치 디렉토리 이름 lib/my_library-[major]. [마이너] – ${main_lib_dest} – 이 표현식과 일치합니다. 그리고 프로젝트의 루트에 대한 경로로 cmake를 호출하십시오 (이 경우 부모 폴더): 라이브러리가 설치되면 CMake는 find_package() 명령을 사용하여 찾을 수 있습니다. 예를 들어 CMake에는 프로그램, 라이브러리 및 기타 파일의 설치를 간소화하는 정교한 설치 프로세스가 있습니다. CMake 버전 2.4에서는 모든 이전 설치 명령의 기능을 포함하는 새 설치 명령이 도입되었습니다. 이 페이지에서는 새 INSTALL 명령과 이전 명령의 전환에 대해 설명합니다. 이 파일은 라이브러리 리포지토리 내에 저장할 수 있으며 설치해야 합니다.