2013-08-26 5 views
39

나는 다음과 같은 기본 BUILD_TESTS으로명령 줄에서 CMake 옵션()를 설정하는 방법

project(P4V) 
cmake_minimum_required(VERSION 2.6) 

option(BUILD_STATIC_LIBS "Build the static library" ON) 
option(BUILD_SHARED_LIBS "Build the shared library" ON) 
option(BUILD_TESTS "Build test programs" OFF) 

include_directories(${CMAKE_SOURCE_DIR}/include) 
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/lib) 
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/lib) 
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin) 
set(CMAKE_BUILD_TYPE Release) 

add_subdirectory(src) 
if(BUILD_TESTS) 
    add_subdirectory(tests) 
endif(BUILD_TESTS) 

OFF입니다, 내가 CMake GUI없이 전원을 켜 수있는 방법 만과 cmake를 포함하는 CMakeLists.txt을 생성 명령 자체? 나는 다음과 같은 노력하지만

cmake .. -G %1 -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DBUILD_TESTS=ON 
+15

'..' 인수 앞에 플래그를 나열하십시오. – arrowd

+2

가능한 복제본 http://stackoverflow.com/questions/5998186/cmake-adding-command-line-options – dharman

+0

5998186에 대한 대답은 'cmake MyProjectFolder -DMyOption = ON'입니다. – Langley

답변

37

작업 CMakeCache.txt 파일을 삭제하고이 시도하지 않는 : 당신이

cmake -G %1 -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DBUILD_TESTS=ON .. 

경로를 포함하기 전에 모든 명령 줄 정의를 입력 .

+0

OFF를 구체적으로 지정하는 방법? CUDA 옵션을 해제 한 것처럼 보이지 않습니다. –

+4

@ Ébe-isaac 옵션을 명시 적으로 해제하려면'-DOPTION = OFF'를 사용하십시오. –

2

추가 옵션은 빌드 폴더로 이동하고 명령 ccmake .

이 기반 GUI 그러나 터미널처럼 사용하는 것입니다. 이것은 분명히 설치 스크립트에 도움이되지 않지만 적어도 UI없이 실행할 수 있습니다.

내가 가지고있는 경고 중 하나는 경고가있을 때 가끔 생성하지 못하게하는 것입니다. 이 경우 인터페이스를 종료하고 전화하십시오. cmake .

+0

와우 - 설정 파일을 직접 편집하는 것보다 좋습니다! – sage

관련 문제