当前位置:  开发笔记 > 编程语言 > 正文

CMake找到不正确的OpenCV版本

如何解决《CMake找到不正确的OpenCV版本》经验,为你挑选了0个好方法。

我安装了多个版本的OpenCV,而CMake找到了错误的版本。我已经使用brew安装了opencv和opencv3,它们存在于以下路径中:

/usr/local/opt/opencv3
/usr/local/opt/opencv

我的CMakeLists.txt如下所示:

cmake_minimum_required(VERSION 2.8)
set(ENV{OpenCV_DIR} "/usr/local/opt/opencv3")

project(TestProject)

#OpenCV
find_package( OpenCV 3 REQUIRED )
include_directories( ${OpenCV_INCLUDE_DIRS} )

MESSAGE ( STATUS "Found OpenCV: ${OpenCV_VERSION}" )
MESSAGE ( STATUS "OpenCV_INCLUDE_DIRS= ${OpenCV_INCLUDE_DIRS}" )
MESSAGE ( STATUS "OpenCV_DIR= $ENV{OpenCV_DIR}" )

我正在使用OpenCV_DIR指向我要使用的OpenCV的位置(在本示例中,它是在100%确定此变量指向正确位置之前立即设置的)。

我的输出是这样的:

-- Found OpenCV: 3.0.0
-- OpenCV_INCLUDE_DIRS= /usr/local/include/opencv
-- OpenCV_DIR= /usr/local/opt/opencv3

因此,它正在查找正确版本的OpenCV(3.0.0),但是include路径设置为其他一些opencv,在这种情况下,/ usr / local / include / opencv指向/ usr / local / opt / opencv,即2.4.8版本。

结果,我的程序都找不到适合的文件!如果OpenCV_DIR环境变量似乎不起作用,是否有人知道如何告诉CMake寻找哪个版本?

推荐阅读
携手相约幸福
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有