win7下的通过cmake编译搭建:Qt+MSVC2017 32位+opencv的环境

win7下的通过cmake编译搭建:Qt+MSVC2017 32位+opencv的环境

(最近这几天就在干这种事,构建的时候总是不成功,文件删了又重新编译,反复折腾,浪费不少时间,搞得心态有点爆炸,哈哈也不知道现在还有多少人在用win7系统呢……)

一、软件的安装
1.先安装好cmake,一般安装好后是gui版本的就没问题了

2.去Opencv官网下载即可,注意!下载的是源码Sources

3.Qt的安装(我的是5.13.0版的)
win7下的通过cmake编译搭建:Qt+MSVC2017 32位+opencv的环境
注意勾选,除了如图的勾选外,还要找到msvc2017 32-bit进行勾选,想用msvc2017那么VS2017也肯定是要装的。

二、构建opencv
win7下的通过cmake编译搭建:Qt+MSVC2017 32位+opencv的环境
"where is the source code folder"是你下载解压出来的opencv源代码的所在目录;
第二个是用来存放编译文件的,自己在任意构建一个build文件夹即可,并如图作为第二个路径选中;
然后,点击Configure,等待其编译完成。之后,就会如图所示出现红色的一片,我们勾选中里面的"BUILD_opencv_world"即可,再次点击Configure,这次编译完后就应该是全白的了;接着点击Generate,使Opencv构建就绪;最后,可以点“”Open project“”运行Visual Stdio 2017的opencv解决方案。

进入VS的项目后,进行如下图所示的操作:
win7下的通过cmake编译搭建:Qt+MSVC2017 32位+opencv的环境
勾选四个选项好后,点击生成即可,并进行一段时间的等待(有点久)

最后系统属性窗口,将Opencv的dll加入PATH中,通常在F:…/build/install/x86/vc15/bin 这样的目录下可以找到

三、测试Opencv(建议完成上面两个操作后,重启一下电脑)
用Text文件创建一个opencv.pri,里面的内容为:
INCLUDEPATH += F:/Qt/Install_Opencv/opencv-3.4.8/build/install/include
Debug: {
LIBS += -lF:/Qt/Install_Opencv/opencv-3.4.8/build/install/x86/vc15/lib/opencv_world348d
}
Release: {
LIBS += -lF:/Qt/Install_Opencv/opencv-3.4.8/build/install/x86/vc15/lib/opencv_world348
}

运行Qt Creator,创建一个控制台应用的项目,双击XXX.pro文件,向其中加入路径,代码类似下面的:
QT += core
QT -= gui

CONFIG += c++11
TARGET = Test_App3
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp
DEFINES += QT_DEPRECATED_WARNINGS
include(F:/Qt/Install_Opencv/opencv-3.4.8/build/opencv.pri)
修改好后,保存一下!

最后,在main.cpp里,进行修改,代码类似下面:
#include
#include “opencv2/opencv.hpp”

int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
using namespace cv;
Mat image1= imread(“F:/Qt/Qt-code/Image(new)/Frame.jpg”);
imshow(“Output”,image1);
return a.exec();
}

(其中读取的图片可以是电脑里面任意一jpg或png的图片,选对路径即可)
到这一步话,测试已经结束,如果run运行过后,能显示图片那么就说明你构建环境成功了!
win7下的通过cmake编译搭建:Qt+MSVC2017 32位+opencv的环境
(由于本人水平有限,可能诸位读者按照流程操作也不一定都能将问题顺利解决,还望见谅!)