How to list all CMake build options and their defa

2020-01-28 02:34发布

How can I list cmake default build option in command-line?.
I need to build OpenCV libraries from source, before that I want know what are the default build settings.

标签: cmake
3条回答
Lonely孤独者°
2楼-- · 2020-01-28 03:11

You can do cmake -LAH too. The H flag will provide you help for each option.

查看更多
再贱就再见
3楼-- · 2020-01-28 03:15

cmake -LA

To list all option( and set( CACHE (cached) variables do:

mkdir build
cd build
cmake ..
cmake -LA | awk '{if(f)print} /-- Cache values/{f=1}'

Sample stdout:

AUTOGEMM_ARCHITECTURE:STRING=Hawaii
BLAS_DEBUG_TOOLS:BOOL=OFF
BLAS_DUMP_CLBLAS_KERNELS:BOOL=OFF
BLAS_KEEP_KERNEL_SOURCES:BOOL=ON
BLAS_PRINT_BUILD_ERRORS:BOOL=O

The -A switch also show options marked as advanced, so you will likely want to omit it when casually browsing the most useful options.

ccmake ncurses

sudo apt-get install cmake-curses-gui
ccmake ..

shows:

Tested in Ubuntu 16.10, cmake 3.5.2.

查看更多
老娘就宠你
4楼-- · 2020-01-28 03:18

I do not know of an direct way to do it.

A way around this is to edit the main CMakeLists.txt and print at the end of the file the settings you are interested. The Variables where the most important cmake setting are stored are listed here:

I always print these variables at the end of my CMakeLists.txt to see the settings.

MESSAGE(STATUS "Build type: " ${CMAKE_BUILD_TYPE})
MESSAGE(STATUS "Library Type: " ${LIB_TYPE})
MESSAGE(STATUS "Compiler flags:" ${CMAKE_CXX_COMPILE_FLAGS})
MESSAGE(STATUS "Compiler cxx debug flags:" ${CMAKE_CXX_FLAGS_DEBUG})
MESSAGE(STATUS "Compiler cxx release flags:" ${CMAKE_CXX_FLAGS_RELEASE})
MESSAGE(STATUS "Compiler cxx min size flags:" ${CMAKE_CXX_FLAGS_MINSIZEREL})
MESSAGE(STATUS "Compiler cxx flags:" ${CMAKE_CXX_FLAGS})
查看更多
登录 后发表回答