因为我们要安装Qt(官网下载即可),所以顺便就把MinGw安装组件给选上就行了,其他的看自己需求,编译OpenCV选这个就够了。
还有一种方法就是,直接下载MinGw。
OpenCV下载链接
Opencv安装包直接去官网下载就可以了,这里根据自己的项目要求来进行版本的选择,一般来说,版本号之间会有较大差别,版本号之内差别较小,目前大都使用OpenCV-3.x.x。
CMake下载地址
这里根据自己的平台进行相应的选择即可。
然后进行安装,按照步骤一步一步进行即可。
到目前为止,我们就下载完所有需要的工具了。
博主下载的各个版本分别为
MinGW-5.3.0
OpenCV-3.4.9
CMake-3.16.5
安装完软件不要忘记把地址添加到环境变量中并使其生效。
按步骤分别选择OpenCV的下载路径和安装路径,最后点击Config按钮进行配置。
弹出窗口是否确认所选Build路径,点击Yes即可。
选择第二项Specify native compilers,然后点击Next即可。
选择之前MinGW安装目录下的bin目录,分别选择gcc
和g++
编译器。注意这里应该选择32位版本的编译器。
用之前安装Qt的方式安装的,编译器目录为E:\ProgramFile\Qt\Tools\mingw\bin
使用VS和Mingw配置的区别也就在这里,选择对应的就行,所以用VS也是一样的。
完成上一步之后,点击Config,成功之后,按需还要选择组件,然后点击Generate。如果之后还有红色的,最简单的方式就是再次点击Generate按钮进行再次生成。待下方显示Generating done
,配置就结束了。
注意: 另外必须要勾选下图中的 WITH_QT
,以使CMake编译出可以供Qt使用的库文件(个人认为这样才会使cmake去调用qt中的qmake指令)。
打开shell窗口,cd到opencv的安装目录,在命令行中输入以下指令进行编译
mingw32-make
或者也可以输入
mingw32-make -j4
-j
后面的数字表示用多少线程进行编译,根据自己的电脑性能进行选择,不指定线程的话,默认使用单线程编译。
上述编译完成后,在命令行输入以下指令进行安装
mingw32-make install
这样,OpenCV就安装好了,可以直接调用进行使用了
因为碰到问题时顾着解决,有些忘记截图了,有些问题重新编译也无法重现,只能说一下后面出现问题的一些解决方案。当然也有些问题没放出来,因为只要你前面软件安装这些都没问题,别的错基本也不会出现,太多容易搞蒙。
如果使用了多线程编译,导致错误,但是错误的信息不明确,如:
Makefile:161: recipe for target 'all' failedmingw32-make: *** [all] Error 2
解决方案:
使用单线程编译
mingw32-make
... windres.exe: unknown option -- W ...
或者
FORMAT is one of rc, res, or coff, and is deduced from the file nameextension if not specified. A single file name is an input file.No input-file is stdin, default rc. No output-file is stdout, default rc.
解决方案:
在 cmake-gui 编译配置中:取消勾选 ENABLE_PRECOMPILED_HEADERS
然后重新 Configure
-Generate
-mingw32-make
...opencv/sources/modules/videoio/src/cap_dshow.cpp...... 'sprintf_instead_use_StringCbPrintfA_or_StringCchPrintfA' was not declared in this scope ...
或者
Makefile:161: recipe for target 'all' failedmingw32-make: *** [all] Error 2
解决方案:
修改...\opencv\sources\modules\videoio\src\cap_dshow.cpp
文件,在#include "DShow.h"
这行的上面加一行#define NO_DSHOW_STRSAFE
,如:
#define NO_DSHOW_STRSAFE#include "DShow.h"
然后重新 Configure
-Generate
-mingw32-make
因为每个人电脑环境不同,正常不会出这种问题,但是自己可以分析解决,无非是要建立opencv-python库。
如果你还是需要安装这个,我使用的方法是重新安装Python。很快就能搞定了
Python下载
自此我们就完成了opencv的安装了,可以直接在Qt中进行测试了。