【问题标题】:Check where include/library path variables like OpenCV_LIBS point to in unix检查包含/库路径变量(如 OpenCV_LIBS)在 unix 中指向的位置
【发布时间】:2016-03-03 02:04:20
【问题描述】:

在将 OpenCV 等库与 C/C++ 结合使用时,OpenCV_LIBS 等变量用于将编译器/链接器指向相关目录。

使用的示例:

include_directories( ${OpenCV_INCLUDE_DIRS} )
target_link_libraries( project_name ${OpenCV_LIBS} )

如何检查这些变量指向的位置?我尝试在终端中输入setprintenv,但它只显示一些系统变量。还有如何设置/更改这些变量?

【问题讨论】:

    标签: cmake c++ opencv cmake include-path library-path


    【解决方案1】:

    这些变量由 确定(有关 可用CMake 变量的更详细说明,请参阅OpenCVConfig.cmake)。

    要查看这些值,您可以在 find_package(OpenCV) 调用之后将 message() 调用添加到项目的 CMakeLists.txt

    find_package(OpenCV)
    
    message(STATUS "OpenCV_INCLUDE_DIRS = ${OpenCV_INCLUDE_DIRS}")
    message(STATUS "OpenCV_LIBS = ${OpenCV_LIBS}")
    

    或者,您可以通过 CMake 命令行选项运行 find_package

    这里有几个示例(如果 CMake 无法自动找到您的库安装路径,CMAKE_PREFIX_PATH 部分是可选的):

    1. MODE=COMPILE 提供包含目录(例如,使用 MSVC 编译器)

      $ cmake 
          --find-package 
          -DNAME=OpenCV 
          -DCOMPILER_ID=MSVC -DMSVC_VERSION=1700 
          -DLANGUAGE=CXX 
          -DMODE=COMPILE 
          -DCMAKE_PREFIX_PATH:PATH=/path/to/your/OpenCV/build
      
    2. MODE=LINK 提供链接库(例如使用GNU 编译器)

      $ cmake 
          --find-package 
          -DNAME=OpenCV 
          -DCOMPILER_ID=GNU 
          -DLANGUAGE=CXX 
          -DMODE=LINK 
          -DCMAKE_PREFIX_PATH:PATH=/path/to/your/OpenCV/build
      

    注意:此 CMake 调用将在您当前的工作目录中创建一个 CMakeFiles 子目录。


    参考文献

    【讨论】:

      猜你喜欢
      • 2019-10-18
      • 2016-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-03
      • 1970-01-01
      • 2011-05-19
      • 1970-01-01
      相关资源
      最近更新 更多