默认情况下,include_directories命令会将目录添加到列表最后,可以通过命令设置CMAKE_INCLUDE_DIRECTORIES_BEFORE变量为ON来改变它默认行为,将目录添加到列表前面。也可以在每次调用include_directories命令时使用AFTER或BEFORE选项来指定是添加到列表的前面或者后面。如果使用SYSTEM选项,会把指定目录当成系统的搜索目录。该命令作...
{CMAKE_CURRENT_SOURCE_DIR}, include dir list: ${dirs}") # 编译testdir1下的库 add_subdirectory(testdir1) message("--$ after compile lib test1") get_property(dirs TARGET test1 PROPERTY INCLUDE_DIRECTORIES) message("--$ lib test1 include dir list: ${dirs}") get_property(dirs DIRECTORY ...
# 遍历当前目录的所有文件并使用DIR_SRCS保存,也可以通过SET(SRC_LIST main.c)进行指定 aux_source_directory(. DIR_SRCS) # 添加生成可执行文件的保存目录,不会保存中间产物,如果不指定该目录则和中间产物保存在一起 set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin ) # 添加头文件 include_directories(...
场景2:使用include_directories包含子目录sub,并在main.cpp里面包含"test.h"。 # CMakeList.txt cmake_minimum_required(VERSION 3.18.2)project(include_directories_test)include_directories(sub)#与上个场景不同的地方在于此处 add_executable(test main.cpp) //main.cpp#include"test.h"#include<stdio.h>int...
include_directories(include ${Boost_INCLUDE_DIRS} ${catkin_INCLUDE_DIRS}) 第一个参数指明了include/ 的目录同样是一个建包所需路径的一部分。 add_executable(tf_broadcast src/tf_broadcaster.cpp) add_executable(tf_listener src/tf_listener.cpp) ...
├── include │ └── swap.h ├── main.cpp └── src └── swap.cpp 2 directories, 3 files 1. 2. 3. 4. 5. 6. 7. 8. src目录下的CMakeLists.txt: # 寻找该目录下所有的源代码文件并将列表存储在SRC_LIST中 aux_source_directory(. SRC_LIST) ...
imgcodecs) if (OPENCV_FOUND) message(STATUS "找到OpenCV:\"${OpenCV_INCLUDE_DIRS}\",ENABLE_OPENCV宏已打开") message(STATUS "找到OpenCV:\"${OpenCV_LIBS}\"") include_directories(${OpenCV_INCLUDE_DIRS}) add_definitions(-DENABLE_OPENCV) list(APPEND LINK_LIB_LIST ${OpenCV_LIBS}) endif (...
include_directories(): 添加头文件目录。 find_package(): 寻找并加载外部库。 install(): 定义安装规则。 这仅是 CMake 语法的简要概述,CMake 提供了丰富的功能和命令,具体内容可以参考官方文档:CMake官方文档。不过笼统的概述相信并不能让读者掌握CMake的使用,不用担心,接下来,我们会给出一个CMakeList的编写...
aux_source_directory (. SRC_LIST):把当前目录的源文件:main.c test1.c test2.c都放到变量SRC_LIST里面去。 include_directories (../include):把include目录的头文件包含进来。 set (EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin):这里面的EXECUTABLE_OUT_PATH和PROJECT_SOURCE_DIR是CMake自带的预定义...
使用的方法是要在bash中使用export或者在csh中使用set命令设置或者CMAKE_INCLUDE_PATH=/home/include cmake …等方式。 这两个变量指的是,如果头文件没有存放在常规路径中,比如(/usr/include,/usr/local/include等),则可以通过这些变量来弥补。 之前在CMakeList.txt中使用了INCLUDE_DIRECTORIES(/usr/include/hello...