set(CMAKE_CXX_STANDARD_REQUIRED ON):这一行指令表示,如果编译器不支持指定的 C++ 标准,CMake 将报错并终止构建过程。如果将此选项设置为 OFF,则 CMake 会尽量使用所选 C++ 标准版本进行编译,但如果编译器不支持该版本,CMake 会自动降级到编译器支持的最接近的 C++ 标准版本。 set(CMAKE_CXX_EXTENSIONS OFF...
9.1 set 直接设置变量的值 set(SRC_LISTmain.cpptest.cpp)add_executable(demo${SRC_LIST}) 9.2 set 追加设置变量的值 set(SRC_LISTmain.cpp)set(SRC_LIST${SRC_LIST}test.cpp)add_executable(demo${SRC_LIST}) 9.3 list 追加或者删除变量的值 set(SRC_LISTmain.cpp)list(APPENDSRC_LISTtest.cpp)list(RE...
# 设置 CMake 最低版本要求cmake_minimum_required(VERSION3.8)# 定义项目名称和版本project(MyAppVERSION1.0.0LANGUAGESCXX)# 设置 C++ 标准set(CMAKE_CXX_STANDARD17)set(CMAKE_CXX_STANDARD_REQUIREDON)set(CMAKE_CXX_EXTENSIONSOFF)# 定义用户可配置的选项option(ENABLE_DEBUG"Enable debug output"ON)if(ENABLE...
# set(EXECUTABLE_OUTPUT_PATH ../output) set(CMAKE_CXX_STANDARD 11) # 生成依赖库文件路径 set(LIBRARY_OUTPUT_PATH ../share) # add_executable(app ${SRC}) # add_library(calc STATIC ${SRC}) set(tmp hello world) set(tmp1 ${tmp} ${SRC}) message(${tmp}) message(${tmp1}) list(APP...
(1)set直接设置变量的值 set(SRC_LIST main.cpp test.cpp) add_executable(demo ${SRC_LIST}) (2)set追加设置变量的值 set(SRC_LIST main.cpp) set(SRC_LIST ${SRC_LIST} test.cpp) add_executable(demo ${SRC_LIST}) (3)list追加或者删除变量的值 ...
└─src hello.cxx hi.cxx 2、CMakeLists.txt cmake_minimum_required(VERSION 3.1) #项目名 project(libhello) # 1、指定库的目录变量 set(libhello_src src/hello.cxx) # 指定头文件搜索路径 include_directories("${PROJECT_SOURCE_DIR}/include") ...
cmake_minimum_required(VERSION2.8)project(main)set(SRC_LIST./main.c./test1.c./test2.c)add_executable(main ${SRC_LIST}) 这样是能够通过编译的: 代码语言:javascript 复制 root@txp-virtual-machine:/home/txp/test# cmake.--Configuring done--Generating done--Build files have been written to:/...
# 指定工程名 PROJECT (HELLO) # 现阶段,你只需要了解 SET 指令可以用来显式的定义变量即可 # 将 hello.cpp 赋值给 SRC_LIST 变量,也可以指定多个源文件,用空格隔开 # SET(SRC_LIST hello.cpp add.cpp sub.cpp) SET(SRC_LIST hello.cpp) # 输出打印构建目录 MESSAGE(STATUS "This is HELLO_BINARY_DIR...
set (EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin) aux_source_directory (src SRC_LIST) include_directories (include) add_executable (main ${SRC_LIST}) 同时,还要把src目录下的CMakeLists.txt删除。 然后正常编译运行就可以。 五 动态库和静态库的编译控制 ...
add_library(hello ${SRC_LIST_1} ${SRC_LIST_2) 1. 2. 3. 当然上面的aux_source_directory也可以调用多次,可以理解成搜索你想要的源文件并设置到多个变量上,比如: aux_source_directory(fun1 SRC_LIST_1) aux_source_directory(fun2 SRC_LIST_2) ...