QT5.7.1 MinGW版本配置Opencv3.2.0

由于需要在QT MinGW版本配置Opencv3.2,而之前安装的Opencv3.2是从官网下载的编译好的MSVC版本的。所以需要自己编译MinGW版本的opencv3.2的库。

准备工作:

1.CMake安装好,将安装目录的bin目录添加至环境变量,我本地是D:\cmake-3.10.2-win64-x64\bin;

2.Opencv3.2官网下载源码,解压到D:\opencv-3.2.0\sources,新建文件夹D:\opencv-3.2.0\build;

3.打开Cmake,source目录选择D:\opencv-3.2.0\sources,build目录选择D:\opencv-3.2.0\build;

4.点Configure,如果是第一次配置,会让你选择编译器,选择MinGW Makefiles,下一步,选择第二项,specify native compilers。点击下一步,选择gcc,g++的目录,选择Qt5.7.1的gcc,g++目录。Fortran目录不用管。点击finish完成。接着会开始运行配置过程。

5.配置过程中如果能联网那最好了,应该会没有错误出现。我的公司的电脑是没有连网的,完成之后可能会出现ffmpeg相关的库下载失败,解决方法参考了这篇博文http://blog.csdn.net/z137628817/article/details/70159043

在opencv安装目录下sources\3rdparty\ffmpeg\ffmpeg.cmake文件中可以看到下载的网址。我的ffmpeg.cmake中是https://raw.githubusercontent.com/opencv/opencv_3rdparty/${FFMPEG_BINARIES_COMMIT}/ffmpeg/)ocv_download(PACKAGE opencv_ffmpeg.dll。这个网址中的${FFMPEG_BINARIES_COMMIT}实际上是ffmpeg.cmake前面几行中set(FFMPEG_BINARIES_COMMIT "2a19d0006415955c79431116e4634f04d5eb5a74")已经赋好了相应的值。所以只需要在浏览器中输入https://raw.githubusercontent.com/opencv/opencv_3rdparty/2a19d0006415955c79431116e4634f04d5eb5a74/ffmpeg/opencv_ffmpeg.dll并且回车就可以开始文件
 opencv_ffmpeg.dll的下载了,并且这个文件的harsh码应该是正确的。下载完之后按照参考文章所说的放到sources\3rdparty\ffmpeg\downloads目录中的2a19d0006415955c79431116e4634f04d5eb5a74文件夹中即可。实际上这个文件夹的名称就是对应的哈希码。opencv_ffmpeg_64.dll,ffmpeg_version.cmake文件的下载也是一样的。

6.找到WITH_QT,WITH_OPENGL勾上,继续点configure,可能还会出现一些QT组件的路径不对,这里修改成Qt5.7.1的路径,如下:

E:\Qt\Qt5.7.1\5.7\mingw53_32\lib\cmake\Qt5Concurrent

E:\Qt\Qt5.7.1\5.7\mingw53_32\lib\cmake\Qt5Core

E:\Qt\Qt5.7.1\5.7\mingw53_32\lib\cmake\Qt5Gui

E:\Qt\Qt5.7.1\5.7\mingw53_32\lib\cmake\Qt5OpenGL

E:\Qt\Qt5.7.1\5.7\mingw53_32\lib\cmake\Qt5Test

E:\Qt\Qt5.7.1\5.7\mingw53_32\lib\cmake\Qt5Widgets

7.继续点configure,直到红色的消失。就可以点击generate按钮。

8.cd到D:\opencv-3.2.0\build,执行mingw32-make,再执行mingw32-make install完成。

9.完成之后生成的lib,dll,头文件会生成到D:\opencv-3.2.0\build\install目录下。


你可能感兴趣的:(MinGW,Opencv,环境配置)