在CMake中,添加include目录通常指的是将特定的头文件目录添加到编译器的搜索路径中,以便在编译时可以找到这些头文件。不过,值得注意的是,CMake中的include指令和include_directories()命令虽然名称相似,但它们的用途是不同的。include指令用于包含其他CMake脚本文件,而include_directories()命令则用于指定头文件搜索路径。
在cmake里add_executable里如果没有包含.cpp文件,该.cpp文件就不适用include_directories包含文件
{PROJECT_SOURCE_DIR}/include) # 查找当前目录下的所有源文件,并将名称保存到 SRC_LIST 变量 file(GLOB SRC_LIST ${CMAKE_CURRENT_SOURCE_DIR}/src/*.c) # 添加库搜索路径 link_directories(${PROJECT_SOURCE_DIR}/lib) # 添加可执行文件 add_executable(app ${SRC_LIST}) # 链接静态库到可执行文件 ...
include()需要读取文件的名称,而add_subdirectory()需要一个目录,并在该目录中查找CMakeLists.txt文件。传递给include()的文件名通常扩展名为.cmake,但可以是任何名称。 include()没有引入新的变量范围,而add_subdirectory()引入了。 默认情况下,这两个命令都引入了一个新的策略范围,但是可以使用NO_POLICY_SCOPE选...
include是包含目录 src是子函数的目录或是依赖文件的目录 main.cpp主函数 从上图的右边可以发现src里存在add.cpp和一个对应的cmakelists.txt文件,同时根目录下也存在一个cmakelists.txt文件 main.cpp #include<iostream> #include"include/add.h" using namespace std; ...
add_library(生成库),target_link_libraries(生成目标连接的库),set_target_properties CMAKE 添加编译选项|-g编译参数/选项 包含文件的的目录include_directories 优化项|优化等级 Cmake设置优化等级| cmake 生成 debug和 release 版 设置默认构建类型 CMake设置编译参数/选项 ...
${CMAKE_CURRENT_SOURCE_DIR}/add/include ${CMAKE_CURRENT_SOURCE_DIR}/mul/include) 首先先把add, mul两个目录加入了编译系统。同样的,这两个目录里面必须要有CMakeLists.txt文件。我们先看一下add目录的CMakeLists.txt,里面只有一个语句 set(add_src ${CMAKE_CURRENT_SOURCE_DIR}/fadd.cpp ${CMAKE_CU...
add_executable(demo main.cpp) 7.最后贴一个完整的例子 代码语言:javascript 复制 cmake_minimum_required(VERSION2.6)INCLUDE_DIRECTORIES(../../thirdparty/comm)FIND_LIBRARY(COMM_LIBcomm../../thirdparty/comm/libNO_DEFAULT_PATH)FIND_LIBRARY(RUNTIME_LIBrt/usr/lib/usr/local/libNO_DEFAULT_PATH)link_li...
add_library(coreSHAREDcore.cpp)target_include_directories(corePUBLIC${CMAKE_CURRENT_SOURCE_DIR})主...
#include <hello.h> int main() { func(); return 0 ; } 1. 2. 3. 4. 5. 6. 7. 2、导入第三方头文件 hello.h 位于/root/cpp_test/backup/cmake_test/t4/include/hello目录中,并没有位于系统标准的头文件路径,为了让我们的工程能够找到 hello.h 头文件,我们需要引入一个新的指令 INCLUDE_DIRECT...