一、OpenCV 3.4.2
二、CMake 3.12.1
三、Qt 5.11.1
四、MinGW 32 使用的是Qt按照的版本
五、系统是Windows 7
下面是编译注意事项:
一、添加 MinGW 到环境变量
为系统变量 Path 添加MinGW路径,俺的是 C:\Qt\Qt5.11.1\Tools\mingw530_32\bin
二、使用 CMake 生成 OpenCV 的 Makefile:
1)打开 cmake-gui,设置源码和生成路径(根据各自实际状况设置):
⦁ Where is the source code: E:\OpenCV-3.4.2\sources
⦁ Where to build the binaries: E:\OpenCV-3.4.2\build
2)点击 Configure,设置编译器:
⦁ Specify the generator for this project: MinGW Makefiles
⦁ Specify native compilers
而后:
⦁ Compilers C: C:\Qt\Qt5.11.1\Tools\mingw530_32\bin\gcc.exe
⦁ Compilers C++: C:\Qt\Qt5.11.1\Tools\mingw530_32\bin\g++.exe
最后点:Finish
三、编译配置:
⦁ 勾选 WITH_OPENGL
⦁ 勾选 WITH_QT
⦁ 勾选 WITH_OPENMP(用于并行计算)
⦁ 勾选 ENABLE_CXX11python
⦁ 不勾选 ENABLE_PRECOMPILED_HEADERS
⦁ 不勾选 WITH_IPP
⦁ 不勾选 WITH_TBB(OpenCV-3.4.2版本出现的问题,以前的版本须要看状况)
⦁ 不勾选 WITH_MSMF(同上,第一天俺就在折腾这个)
由于俺不须要Java和python支持,因此这两个俺全取消了 :)
点击 Configure,Generate 生成 Makefile
四、在下面正式编译前还得处理一个源程序内容
修改\modules\videoio\src\cap_dshow.cpp文件,
在#include "DShow.h"这行的上面加一行#define NO_DSHOW_STRSAFE,如:
#define NO_DSHOW_STRSAFE
#include "DShow.h"
五、编译 OpenCV:
在build目录空白处 shift+右键,在此处打开命令窗口
打开终端进行编译:mingw32-make (没有设置设置变量的话须要敲全目录你懂的)
可打开多进程:mingw32-make -j4(俺的机器是4核)
六、装载OpenCV:
上述编译过程完成后,若是没有错误,那么恭喜你,你成功了!
那么就进行最后一步装载吧:mingw32-make install
该命令会将编译后生成的头文件及动态库文件复制到目录:“\install”。该目录包括运行OpenCV程序所须要的所有资源。ide