CMakeLists记录

1. CMakeLists.txt直接使用类似${OpenCV_INCLUDE_DIRS}、${OpenCV_LIB_DIR}这样的表述的原因。

          find_package(OpenCV REQUIRED)

          include_directories(${OpenCV_INCLUDE_DIRS})

          link_directories(${OpenCV_LIB_DIR})

find_package(OpenCV REQUIRED)会在系统中找到OpenCVConfig.cmake,该文件定义了OpenCV_INCLUDE_DIRS和OpenCV_LIB_DIR、OpenCV_LIBS 等变量,因而可以使用include_directories和target_link_libraries来访问这两个变量。

 2. 有关find_package(批量引入库文件和头文件)、include_directories(引入头文件目录)、link_directories(引入库文件目录到当前工程)、link_libraries (引入库文件到当前工程)、target_link_libraries(引入库文件到子工程)、target_include_directories(引入头文件目录到子工程)。见下个链接:

target_link_libraries默认的搜索路径通常为/usr/lib/usr/local/lib,以及它们的子目录、和环境变量LD_LIBRARY_PATH指定的路径。需要自定义库文件搜索路径时,可以使用target_link_directories命令或在CMakeLists.txt文件中设置CMAKE_LIBRARY_PATH变量来添加额外的路径。

CSDN博主「仲夏夜之梦~」的原创文章https://blog.csdn.net/challenglistic/article/details/129093434

posted @ 2023-06-09 15:05  wieneralan  阅读(20)  评论(0编辑  收藏  举报