-
引用系统环境变量
# xx 这个环境变量应该能被 echo $xx 打印出来 $ENV{xx} -
先看下
CMakeList.txt引用opencv.pc的逻辑
OpenCV标识了该opencv.pc文件 -
引用
pkgconfig/*.pc该文件在/usr/local/lib/pkgconfig/*.pc可以循迹查看 -
注意,如果使用.pc文件,则只用两件套,不用三件套
不用声明链接的库目录在哪link_directories()
只需要两件套find_package(OpenCV REQUIRED) # 头文件目录 include_directories(${OpenCV_INCLUDE_DIRS}) # 依赖的库文件是哪些?其实target_link_libraries()就说明了库文件的目录所在 target_link_libraries(${OpenCV_LIBS}) -
一个很有用的函数,把指定目录下的
*.cpp说明成某变量aux_source_directory(./ SRC) -
有子目录下的
CMakeLists.txt那么在顶层目录(有CMAKE_MINIMUM_REQUIRED()和PROJECT()变量的目录),使用如下函数来包含子目录下CMakeLists.txtadd_subdirectory(./src) -
学习了几个系统变量
PROJECT_SOURCE_DIR--> 表示最顶层目录
PROJECT_BINARY_DIR--> 执行cmake ..命令的目录
对于生成库文件的工程,这个变量管用,表示输出的库文件放哪
set(LIBRARY_OUTPUT_PATH xx)
对于生成二进制可执行文件,以下如是
set(EXECUTABLE_OUTPUT_PATH xx)