我在顶级CMakeLists.txt中有这个:
set(CMAKE_BINARY_DIR ${CMAKE_SOURCE_DIR}/cmakebuild/bin)
MESSAGE("Value is: \n${CMAKE_BINARY_DIR} ")
add_subdirectory("sub/subA")
在子目录CMakeLists.txt中,我有这个
MESSAGE("SUBDIR Value is: \n${CMAKE_BINARY_DIR} ")
但是cmake
的输出是
Value is:
/home/me/myproj/cmakebuild/bin
SUBDIR Value is:
/home/me/myproj/cmakebuild
为什么/ bin最终没有?
答案 0 :(得分:2)
永远不要设置变量,例如CMAKE_BINARY_DIR
,CMAKE_CURRENT_BINARY_DIR
- CMake会自动设置它们,并且不希望它们在外面更改。
设置这些变量只会让CMake感到困惑,事情变得非常奇怪。