使用CMake和minGW编译OpenCV

5

我在 Windows 上使用 Cmake 和 MinGW 无法编译 openCV。

我完全不理解我的错误,请您帮忙看一下:

好的,我无法发布任何图片。所以这里是错误信息:

CMake Error at cmake/OpenCVUtils.cmake:19 (if):

如果给定了参数:
"C:/BuildOpenCV" "MATCHES" "^C:/Users/Corentin/Desktop/C_C++/openCV/opencv" "OR" "C:/BuildOpenCV" "MATCHES" "^C:/BuildOpenCV"

正则表达式"^C:/Users/Corentin/Desktop/C_C++/openCV/opencv"无法编译

调用堆栈(最近的调用在最前面): CMakeLists.txt:281 (ocv_include_directories)

我的源目录:C:/Users/Corentin/Desktop/C_C++/openCV/opencv

二进制文件生成目录:C:/BuildOpenCV

您有什么想法可以导致这种问题?我是一个新用户,可能忘记了一些重要细节,请原谅=)。

谢谢!

1个回答

21

令人惊讶的是,今天我也遇到了同样的错误,并在stackoverflow上搜索解决方案... ;o)

答案在第二个错误消息中: 正则表达式“^C:/Users/Corentin/Desktop/C_C++/openCV/opencv”无法编译

和你一样,我把我的文件夹命名为../C++/..

由于整个路径被输入为正则表达式,“+”被解释为正则表达式控制序列,表示“一个或多个字符”。因此,++没有意义,表达式无法编译。

(快速)解决方案是将目录重命名为cpp或其他没有控制字符的名称。

从我的角度来看,这是一个bug,因为路径字符串中可能还有其他“控制字符”[]().*+\{}? (特别是在Windows中),例如版本号:OpenCV-2.4.1

我没有时间注册自己来报告这个bug,但也许其他人已经有账户了?


我曾经遇到过同样的问题。谢谢! - vctr

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接