Как установить опцию CMake () в командной строке
Я создал CMakeLists.txt, который содержит следующее
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)
По умолчанию BUILD_TESTS выключен, как я могу включить его без CMake GUI, но с самой командой cmake? Я попробовал следующее, но это не работает
cmake .. -G %1 -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DBUILD_TESTS=ON
3 ответа
Удалите файл CMakeCache.txt и попробуйте это:
cmake -G %1 -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DBUILD_TESTS=ON ..
Вы должны ввести все определения командной строки, прежде чем указывать путь.
Это работает для меня:
cmake -D DBUILD_SHARED_LIBS=ON DBUILD_STATIC_LIBS=ON DBUILD_TESTS=ON ..
Дополнительная опция - перейти в папку сборки и использовать команду ccmake .
Это похоже на графический интерфейс, но на основе терминала. Это, очевидно, не поможет с установочным скриптом, но, по крайней мере, его можно запустить без пользовательского интерфейса.
Единственное предупреждение, которое я имею, это то, что оно не позволит вам генерировать иногда, когда у вас есть предупреждения. если это так, выйдите из интерфейса и вызовите cmake .