【QT搭建opencv环境】

本文参考以下文章:

https://blog.csdn.net/weixin_43763292/article/details/112975207

https://blog.csdn.net/qq_44743171/article/details/124335100

使用软件

QT 5.14.2

下载地址:download.qt.io

选择版本:Qt 5.14.2

Qt 5.14.2百度网盘链接:https://pan.baidu.com/s/1ycfiU34xCnBvbnSBoCrtIw

提取码:zj4c

CMake 3.24.2

各版本下载官网地址:https://cmake.org/files/

选择版本:cmake-3.15.7-win64-x64.msi(CMake 版本选择无所谓)

cmake 3.15.7 百度网盘链接:https://pan.baidu.com/s/1WFWYT1IGdpCp4wlMziLZDA

提取码:x5jn

openCV 4.5.3

下载地址:https://opencv.org/releases/

选择版本:opencv 4.5.3

opencv 4.5.3 百度网盘链接:https://pan.baidu.com/s/1vzkp3BfFZGmO0kDx3ThYVw

提取码:m2xo

opencv_contrib 4.5.3

下载地址:https://github.com/opencv/opencv_contrib/tags

选择版本:opencv_contrib 4.5.3(需要与 OpenCV 版本相同,否则编译时可能会报错)

opencv_contrib 4.5.3 百度网盘链接:https://pan.baidu.com/s/1o4t-qugwC-_XMvV3Yx9Mkg

提取码:vuwc

准备工作

  1. 添加MinGW环境变量:将"QT安装目录\Tools\mingw730_32\bin"路径加入环境变量
  2. 添加CMake环境变量:将"CMake安装目录\bin"路径加入环境变量
  3. 安装opencv:双击下载的opencv-4.5.3-vc14_vc15.exe文件进行安装
  4. 解压contrib模块:将下载的opencv_contrib-4.5.3.zip解压到opencv安装目录下
  5. 创建build目录:在opencv安装目录下创建一个build_xxx目录(命名随意)

编译

1.首先双击运行CMake安装目录\bin\下的cmake-gui.exe,并进行如下的配置:


  1. 在配置过程中,会出现CMake Warning,原因是有两个dll没有下载成功,需要手动进行下载,下载的路径可以去编译目录下生成的CMakeDownloadLog.txt里查看,找到所有"https://"开头,".dll"结尾的网址,进行手动下载,再找到"missing"关键字,将下载的文件放入missing后面路径对应的源码路径下
  2. 进行一些选项勾选


  1. 再次点击"Configuration"进行配置,出现以下报错:

原因是OPENCV_EXTRA_MODULES_PATH的路径斜杠不对,这个路径我是直接复制粘贴过来的,windows路径默认是反斜杠"",而CMake要使用正斜杠"/",这里可以直接点击"..."按钮浏览选择路径,就不用一个个改了

  1. 再次点击"Configuration"进行配置,直到没有红色选项,点击"Generate"

  2. 在编译目录下打开cmd,输入:

    复制代码
     mingw32-make -j 8

"-j 8" 表示使用 8 线程来处理,可以根据电脑硬件条件进行调整。使用单线程编译命令为:

复制代码
    mingw32-make
  1. 等待。。。

  2. 出现问题:

  3. add Entry --->>> BOOL --->>> OPENCV_VS_VERSIONINFO_SKIP 打钩

  4. 重新Configuration,Generate时出现问题:

  5. 根据以上流程使用32位的mingw可以编译成功