Utworzyłem CMakeLists.txt, który zawiera następujące elementy
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)
Domyślnie BUILD_TESTS jest WYŁĄCZONY, jak mogę go WŁĄCZYĆ bez GUI CMake, ale z samym poleceniem cmake? Wypróbowałem następujące, ale to nie działa
cmake .. -G %1 -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DBUILD_TESTS=ON
cmake
cmakelists-options
Denilson Amorim
źródło
źródło
..
argumentem.Odpowiedzi:
Usuń plik CMakeCache.txt i spróbuj tego:
Musisz wprowadzić wszystkie definicje wiersza polecenia przed dołączeniem ścieżki.
źródło
-DOPTION=OFF
.cmake .. -G <whatever> -DOPTION=ON
dla mnie działa dobrze z CMake 3.16.2.Dodatkową opcją jest przejście do folderu kompilacji i użycie polecenia
ccmake .
To jest jak GUI, ale oparte na terminalu. To oczywiście nie pomoże w przypadku skryptu instalacyjnego, ale przynajmniej można go uruchomić bez interfejsu użytkownika.
Jedyne ostrzeżenie, które mam, to to, że czasami nie pozwala ci generować, gdy masz ostrzeżenia. w takim przypadku wyjdź z interfejsu i zadzwoń
cmake .
źródło
to działa dla mnie:
źródło