CMAKE_INSTALL_PREFIX 사용 방법
기본 / usr / local 대신 / usr에 설치하여 설치 대상으로 Makefile을 생성하고 싶습니다. 빌드 디렉토리가 소스 하위 디렉토리에서 완료되었다고 가정하면 다음을 실행합니다.
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr ..
CMakeCache.txt에는 다음이 포함됩니다. CMAKE_INSTALL_PREFIX:PATH=/usr
(OK?)
이제 실행합니다.
하다 설치하다
모든 파일은 여전히 usr / local에 설치됩니다. 뭐가 잘못 되었 니?
편집 : CMakeLists.txt 프로젝트 파일에는 CMAKE_INSTALL_PREFIX가 없습니다. cmake를 실행하기 전에 출력 디렉토리에서 모든 것을 삭제합니다. CMakeLists.txt의 설치 지시문은 다음과 같습니다.
install(TARGETS mylibrary DESTINATION lib)
이는 다음과 같아야합니다 ( 문서 참조 ).
cmake -DCMAKE_INSTALL_PREFIX=/usr ..
이 변수를 사용하는 방법에는 두 가지가 있습니다.
Job이 언급 한 것처럼 명령 줄 인수로 전달합니다.
cmake -DCMAKE_INSTALL_PREFIX=< install_path > ..
에 가치 할당
CMakeLists.txt
:SET(CMAKE_INSTALL_PREFIX < install_path >)
그러나 명령 전에 배치하는 것을 잊지 마십시오
PROJECT(< project_name>)
. 그렇지 않으면 작동하지 않습니다!
그러나 PROJECT (<project_name>) 명령 앞에 배치하는 것을 잊지 마십시오. 그렇지 않으면 작동하지 않습니다!
cmake를 사용한 첫 주-몇 년 동안 GNU autotools를 사용 했으므로 여전히 배우고 있지만 (m4 매크로를 작성 하는 것이 더 낫습니다) 프로젝트 설정 후 CMAKE_INSTALL_PREFIX 를 수정 하는 것이 더 좋은 곳 이라고 생각합니다 .
CMakeLists.txt
cmake_minimum_required (VERSION 2.8)
set (CMAKE_INSTALL_PREFIX /foo/bar/bubba)
message("CIP = ${CMAKE_INSTALL_PREFIX} (should be /foo/bar/bubba")
project (BarkBark)
message("CIP = ${CMAKE_INSTALL_PREFIX} (should be /foo/bar/bubba")
set (CMAKE_INSTALL_PREFIX /foo/bar/bubba)
message("CIP = ${CMAKE_INSTALL_PREFIX} (should be /foo/bar/bubba")
첫 실행 (캐시 없음)
CIP = /foo/bar/bubba (should be /foo/bar/bubba
-- The C compiler identification is GNU 4.4.7
-- etc, etc,...
CIP = /usr/local (should be /foo/bar/bubba
CIP = /foo/bar/bubba (should be /foo/bar/bubba
-- Configuring done
-- Generating done
두 번째 실행
CIP = /foo/bar/bubba (should be /foo/bar/bubba
CIP = /foo/bar/bubba (should be /foo/bar/bubba
CIP = /foo/bar/bubba (should be /foo/bar/bubba
-- Configuring done
-- Generating done
내가 틀렸다면 알려주세요. 배워야 할 일이 많습니다. 재미 있어요.
참고 URL : https://stackoverflow.com/questions/6241922/how-to-use-cmake-install-prefix
'program tip' 카테고리의 다른 글
__init__.py에 코드 추가 (0) | 2020.09.22 |
---|---|
setTimeout ()에 남은 시간을 찾으십니까? (0) | 2020.09.22 |
파이썬의 "이 유니 코드를위한 최고의 ASCII"데이터베이스는 어디에 있습니까? (0) | 2020.09.22 |
코드 메트릭스의 매력은 무엇입니까? (0) | 2020.09.21 |
jQuery로 마지막 5 개 요소 선택 (0) | 2020.09.21 |