2016-10-02 5 views
0

Visual Studio의 빌드 유형 (Debug, Release)을 CMake에 전달할 수 있습니까? 현재 내가 두 단계 과정에서 수동으로이 일을하고있다 :CMake 및 Visual Studio의 일관된 빌드 유형

  1. 변경과 같은 최상위 프로젝트 디렉토리에있는 CMakeLists.txt 파일 : 비주얼 Studion 풀다운 메뉴에서

    cmake_minimum_required (VERSION 3.1.0) 
    set (MyConfig Release) 
    set (PROJECT myProject) 
    ... 
    
  2. , 나는 Release 버전을 선택 빌드의. 그런 다음 빌드를 수행하십시오.

VS 및 CMake에서 충돌하는 빌드 유형을 선택하는 실수를 피하려고합니다.

답변

0

먼저 변수 PROJECT을 "릴리스"로 설정하여 빌드 유형을 변경하지 마십시오. 변수 CMAKE_BUILD_TYPE을 사용하면됩니다.

CMAKE_BUILD_TYPE 변수는 CMakeLists.txt 내에서 사용하지 말고 CMake 호출에 전달해야합니다. 명령 행에서 cmake -DCMAKE_BUILD_TYPE=Release ..을 통해 전달됩니다. 이것은 단일 빌드 유형을 지원하는 빌드 시스템에만 관련이 있습니다. Visual Studio의 빌드 시스템과 같은 빌드 시스템의 경우이 모든 것이 필요하지 않습니다. 여러 구성이 만들어지고 IDE에서 빌드 유형을 선택합니다 (VS에서 풀다운).

추가 읽기 : 내가 VS IDE에서`Debug` 구성을 선택했는지 프로그래밍 CMakeLists.txt``에서 알아낼 수있는 방법 : https://cmake.org/Wiki/CMake_Useful_Variables#Compilers_and_Tools

+0

내가 질문에 명확하지 않다가 될 수 있습니다. 아마도 그것은 전혀 불가능합니다. – NameRakes

+0

불가능합니다. CMake는 모든 빌드 유형에 대한 타겟을 생성하고 실행하려는 것을 선택합니다. – usr1234567