作为一个QT小白,最近在配置QT5+OpenCV,却发现总是踩坑。好在我成功配置好了。
系统版本:win10 64位系统
QT5版本:qt-opensource-windows-x86-5.12.3.exe
Cmake版本:cmake-3.17.0-win64-x64.zip
OpenCV版本:opencv-4.3.0.zip
首先安装QT
win10中安装软件最好不要装在C盘,避免权限问题。

组件中一定要选中MinGW版本的编译器,我这里选择32位,QT其他的请随意

还有Developer and Designer Tools中,也要选中MinGW

然后下一步,等待QT安装成功。
安装Cmake
解压cmake 3.17, ,安装过程中勾选

然后下一步更改安装路径到D盘,继续点击直至安装完成。
设置系统环境变量
将如下目录添加到系统环境变量中(QT安装目录和CMake安装目录):
D:\Qt\Qt5.12.3\Tools\mingw730_32\bin
D:\Qt\Qt5.12.3\5.12.3\mingw73_32\bin
D:\CMake\bin

重启一下系统。
配置Cmake
解压OpenCV到D盘。

在D盘建立一个任意英文目录,我取名为opencv,再打开Cmake
where id the source code:这里选择opencv的源文件目录
where to build the binaries:这里选择后面新建的那个目录
勾选Advanced,点击Configure


点击下一步,后稍作暂停。
打开QT,选择 工具→选项→编译器,查看C和C++的路径


把gcc和g++的路径复制到cmake,点击完成,后等待

勾选中“WITH_OPENGL”、“WITH_QT”;不勾选“WITH_IPP”。



特别的,不要勾选如下选项

否则会出现
modules\core\CMakeFiles\opencv_core.dir\build.make:1506:modules/core/CMakeFiles/opencv_core.dir/vs_version.rc.obj
错误,需要手动编译vs_version.rc.obj文件。

然后再次点 Configure。
出现如下错误,检查路径是否正确

确认后,再次点 Configure,直到没有错误为止。

点击 Generate,稍等片刻。
编译OpenCV
打开windows powershell,定位到自己后面新建的目录。我这里是opencv,执行mingw32-make
该命令可以调用多线程执行:mingw32-make -j8;这表示使用8线程


完成之后输入mingw32-make install

将以下路径添加到系统环境变量
D:\opencv\install\x64\mingw\bin
D:\opencv\bin
重启电脑。
测试OpenCV
在QT的pro文件中添加以下代码:
INCLUDEPATH += D:\opencv\install\include D:\opencv\install\include\opencv2 LIBS += D:\opencv\lib\libopencv_*.a
建立QT工程进行测试
代码
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "opencv2/opencv.hpp"
using namespace cv;
using namespace std;
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
Mat srcImage = imread("C:\\Users\\admin\\Desktop\\opencvTest.jpg");
imshow("test",srcImage);
}


|