使用CMake和minGW编译OpenCV

时间:2012-07-07 16:15:14

标签: windows opencv mingw

我无法在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 个答案:

答案 0 :(得分:21)

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

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

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

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

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

从我的观点来看,这是一个错误,因为还可能有其他“控制字符”[]()。* + \ {}? (特别是在窗口中)路径字符串,即版本号:OpenCV-2.4.1

我没有时间注册自己报告错误,但也许其他人已经有了帐号?