Window10 64位 OpenCV4.5.0 CMake3.20.3 QT5.12.10 编译配置及调用

本文档详细介绍了如何在Windows操作系统上安装CMake、OpenCV、QT,并配置环境变量,以及使用CMake编译OpenCV和在QT中调用OpenCV进行测试的过程。涉及到的关键步骤包括CMake的配置、QT的安装、环境变量的设置、OpenCV的编译和安装,以及QT应用中引入和测试OpenCV库。整个过程可能遇到的错误及解决方法也有所提及。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、下载安装CMake

二、下载OpenCV

三、安装QT

四、添加环境变量

五、使用CMake配置并编译OpenCV

六、QT调用测试


一、下载安装CMake

CMake下载地址:https://cmake.org/download/

打开下载好的cmake-3.20.3-windows-x86_64.msi,开始安装

勾选同意协议,单击下一步

选择添加到用户变量,单击下一步

选择安装位置,默认C盘,单击下一步

开始安装

二、下载OpenCV

OpenCV下载地址:https://opencv.org/releases/ 最新版本为4.5.2,怕编译出妖蛾子,还是用4.5.0吧

在D盘创建一个OpenCV_4.5.0的文件夹,双击打开下载好的opencv-4.5.0-vc14_vc15

选择解压目录,解压,解压完成后软件会自动关闭

三、安装QT

QT下载地址:

国内镜像网站
这里给大家推荐几个国内著名的 Qt 镜像网站,主要是各个高校的:

中国科学技术大学:http://mirrors.ustc.edu.cn/qtproject/
清华大学:https://mirrors.tuna.tsinghua.edu.cn/qt/
北京理工大学:http://mirror.bit.edu.cn/qtproject/
中国互联网络信息中心:https://mirrors.cnnic.cn/qt/
官网:https://download.qt.io/archive/qt/

我这里下载的是官网的5.12.10版本,如果官网的访问不了,也可以访问以上国内镜像

打开下载好的qt-opensource-windows-x86-5.12.10.exe,开始安装,没啥好讲的,下一步

这里需要输入你的QT账号,如果没有会提示注册

这里同意开源协议,单击下下步

下一步

这里选择安装目录

选择安装组件,全部安装需要20多G空间,我这里选择全选

同意许可协议,下一步

快捷方式,直接下一步

单击开始安装

 

四、添加环境变量

打开计算机属性->环境变量->系统变量,添加如下三个变量

C:\Program Files\CMake\bin  这个安装CMake时自动添加,如果没有,手动添加

C:\Qt\Qt5.12.10\Tools\mingw730_64\bin

C:\Qt\Qt5.12.10\5.12.10\mingw73_64

五、使用CMake配置并编译OpenCV

打开刚才解压好的 opencv目录,手动新建opencv-build这个文件夹

打开安装好的CMake

输入OpenCV的源码目录和编译目录

D:\OpenCV_4.5.0\opencv\sources

D:\OpenCV_4.5.0\opencv\opencv-build

勾选Advanced

点击Configure

 

保持默认MinGW Makefiles,点击Specify native compilers(指定本机编译器),再next

注意目录按你电脑上QT目录来,注意斜杠方向

C输入 C:/Qt/Qt5.12.10/Tools/mingw730_64/bin/gcc.exe

C++输入 C:/Qt/Qt5.12.10/Tools/mingw730_64/bin/g++.exe

Fortran空着

弹出错误,不要急

这个时候如果遇到:(没遇到,忽略这个问题)
CMake Error: CMake was unable to find a build program corresponding to "MinGW Makefiles". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool.
解决办法:如图所示勾选Advanced,对变量:CMAKE_MAKE_PROGRAM 设置value .QT目录下的mingw32-make.exe 即可


单击Configure,开始配置,过程时间很长,过程中有可能会连接网络下载东西

Configuring done之后,更多的红色出现,不要慌,接着配置,下拉将WITH_OPENGL和WITH_QT选中即可,然后再次点击Configure

这次就快了,但又是一堆红色,按下面图示修改对应的红色,再次Configuring

终于没红色了

红色消失,最后点击Generate

Generate完成之后,关闭Cmake,此时进入之前我们新建的文件夹D:\OpenCV_4.5.0\opencv\opencv-build

将鼠标放在该文件夹界面内空白处,按住shift键,同时点击鼠标右键,点击在此处打开Powershell窗口(s),

进入Windows Powershell,输入mingw32-make -j 8,回车开始编译

按回车键执行该命令,这里的-j 8是为了让CPU进行多任务处理,可以加快编译速度。我的电脑是4核8线程CPU,如果你的配置更高,你也可以选择更高的数字

 

错误记录:

gcc: error: long: No such file or directory
C:\PROGRA~1\MINGW-~1\X86_64~1.0-P\mingw64\bin\windres.exe: preprocessing failed.
mingw32-make[2]: *** [modules\core\CMakeFiles\opencv_core.dir\build.make:1492: modules/core/CMakeFiles/opencv_core.dir/vs_version.rc.obj] Error 1
mingw32-make[2]: *** Waiting for unfinished jobs....
mingw32-make[1]: *** [CMakeFiles\Makefile2:1844: modules/core/CMakeFiles/opencv_core.dir/all] Error 2

解决:

编译完成,无错误,谢天谢地

100%完成之后,输入mingw32-make install命令进行安装

完成之后退出
另外再将如下路径按照前述方式加入环境变量即可
D:\OpenCV_4.5.0\opencv\opencv-build\install\x64\mingw\bin

六、QT调用测试

创建一个QT Widgets Application应用,选择MinGW_64_bit-Release编译器

mainwindow.cpp中包含

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
using namespace cv;

mainwindow.cpp中添加如下代码

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    Mat image=imread("D:/MultiMode/1/1.jpg",1);//一定要使用绝对路径,其他可以回报错
    namedWindow("Display window", WINDOW_AUTOSIZE );
    imshow("Display window", image );
}

工程文件TestOpenCV.pro中添加如下包含

INCLUDEPATH += D:/OpenCV_4.5.0/opencv/opencv-build/install/include
INCLUDEPATH += D:/OpenCV_4.5.0/opencv/opencv-build/install/include/opencv2
LIBS += D:/OpenCV_4.5.0/opencv/opencv-build/lib/libopencv_*.a

要将编译好的opencv的库复制到工程编译文件夹下才能运行

运行显示

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值