cmake_minimum_required(VERSION 2.8.2 FATAL_ERROR) project("ProjName") // 不推荐使用add_definitions来设置编译选项,因为其作用如同cmake -D add_definitions( -std=c++11 # Or -std=c++0x -Wall -Wfatal-errors -DXXX #等于gcc -DXXX # Other
常用命令 #指定使用的 cmake 的最低版本cmake_minimum_required(VERSION3.0)#项目名称project(app)#[[add_executable:定义工程会生成一个可执行程序add_executable(可执行程序名 源文件名称)]]add_executable(app main.cpp)#set 定义变量 空格间隔set(SRC_LIST a.cpp b.cpp c.cpp)#set 定义变量 ;间隔set(SRC...
list(FIND <list> <value>) list(INSERT <list><element_index> <element> [<element> ...]) list(REMOVE_ITEM <list> <value>[<value> ...]) list(REMOVE_AT <list><index> [<index> ...]) list(REMOVE_DUPLICATES <list>) list(REVERSE <list>) list(SORT <list>) 1. 2. 3. 4. 5. ...
cmake_minimum_required(VERSION3.0)project(ADD)# 搜索指定目录下源文件file(GLOB SRC_LIST${PROJECT_SOURCE_DIR}/main.cc)# 包含头文件路径include_directories(${PROJECT_SOURCE_DIR}/include)# 添加库的目录link_directories(${PROJECT_SOURCE_DIR}/lib)# 添加静态库link_libraries(add_static)# 生成可执行add...
_list list_length) message("List Length: ${list_length}") # 获取列表指定索引处的元素 list(GET my_list 1 element) message("Element at index 1: ${element}") # 删除列表中的元素 list(REMOVE_ITEM my_list "banana") # 输出更新后的列表 message("List after removing 'banana': ${my_list}...
# 获取列表长度 list(LENGTH my_list list_length) message("List Length: ${list_length}") # 获取列表指定索引处的元素 list(GET my_list 1 element) message("Element at index 1: ${element}") # 删除列表中的元素 list(REMOVE_ITEM my_list "banana") # 输出更新后的列表 message("List after re...
cmake_minimum_required(VERSION3.0)project(CALC)add_executable(app add.c div.c main.c mult.c sub.c) 接下来依次介绍一下在 CMakeLists.txt 文件中添加的三个命令: cmake_minimum_required:指定使用的 cmake 的最低版本 可选,非必须,如果不加可能会有警告 ...
cmake_minimum_required(VERSION 3.0) project(CALC) include_directories(${PROJECT_SOURCE_DIR}/include) file(GLOB SRC_LIST "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") # 设置动态库/静态库生成路径 set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib) # 生成动态库 #add_library(calc SHARED ${SRC...
message([<mode>] "message to display" ...)STATUS,WARNING,AUTHOR_WARNING,SEND_ERROR,FATAL_ERROR,DEPRECATION list(LENGTH <list> ) list(GET <list> <element index> [<element index> ...] ) list(APPEND <list> [<element> ...]) list(FIND <list> <value> ) list...
在这一点上,我们应该指出,我们可以使用add_definitions(-DIS_LINUX)(当然,根据所讨论的平台调整定义)而不是使用target_compile_definitions来设置定义。使用add_definitions的缺点是它修改了整个项目的编译定义,而target_compile_definitions给了我们限制定义范围到特定目标的可能性,以及通过使用PRIVATE、PUBLIC或INTERFACE限定...