搭建 QT6+OpenCv4.7+CMake的环境

本文主要介绍如何搭建QT6+OpenCv的开发环境,基本流程如下

  1. 先安装CMake3.27.3,用来编译适用用QT的OpenCv的源码,安装完成后要配置系统的环境变量
  2. 安装Qt6的开发环境,并配置环境变量,注意一定要重启电脑才能生效
  3. 下载OpenCv的源码,用于后面的编译
  4. 上述环境准备好后,使用CMake来编译适配Qt的OpenCv源码
  5. 安装OpenCv
    附件:
    https://download.csdn.net/download/liushuiruobing/88328724
    版本详情:QT6.4.3 + OpenCv4.7 + CMake 3.27.3

    CMake的安装
  • CMake 的安装比较简单,一直按照默认设置点下去就可以,在下面的页面时,选择添加CMake到系统路径。
  • 安装完成后的文件如下

    OpenCv的安装
  • 双击安装包,选择解压路径
  • 解压过程
  • 解压完成后文件如下:

    Qt的安装
  • 一定要注意安装路径不要有空格
  • 双击安装包,然后一路点击"下一步"



  • 选择自定义安装
  • 选择Qt
  • 选择Developer and Designer Tools
  • 一路点击,继续安装
  • 安装进行中,这个过程比较长,需要先下载后安装

    配置系统环境变量
  • 按照自己的安装路径,配置系统环境变量,配置完成后,一定要重启电脑

    基于CMake 配置OpenCv的编译环境
  • 在opencv文件夹下新建rebuild_for_qt文件夹,存放新编译的内容
  • 打开CMake
  • 配置如下,点击Config
  • 在出现的界面进行如下配置
  • 在出现的界面,选择安装qt时的安装的gcc.exe 和g++

  • 点击Finished,进行配置
  • 配置完成之后,会有一些错误,然后进行选择后,再重新配置
    • 选中"WITH_OPENGL"、"WITH_QT",WITH_OPENMP,
    • 将"WITH_IPP"取消,以及带有Python的配置取消
    • 然后再次点【Configure】
  • 再次Config后,依然会出现错误,主要是不能从github下载一些文件

  • 找到源码目录下的.cache\ffmpeg文件夹,把压缩包里的3个文件改为和下面文件名称一致

  • 再次Config后,就只剩下warning,不再有错误了,此时表示构建完成,然后点击Generate
  • 出现如下信息,表示构建完成

    编译OpeCv
  • 在 rebuild_for_qt目录下打开命令行cmd,输入mingw32-make -j 2 的指令,注意 j 后面的2指的是自己电脑的内核数,这条指令的意思是创建2个线程来编译OpenCv, 可以根据自己电脑的配置来修改这个数字,按下回车开始编译。
  • 全部编译完成到100%,没有红色错误提示即可
  • 输入mingw32-make install 命令,进行安装,安装完成后如下
  • OpenCv安装完成后,要将其配置到系统环境中

    使用Qt测试环境配置是否成功
  • 创建一个Qt的项目
  • 填写项目名称和存储路径

  • 打开.pro文件 配置头文件和库目录的引用
    INCLUDEPATH += E:\opencv_4.7\rebuild_for_qt\install\include LIBS += E:\opencv_4.7\rebuild_for_qt\lib\libopencv_*.a
  • 测试代码,加载并显示一张图片
  • 编译并运行项目,图片成功显示,表示配置成功!
相关推荐
QT界面美化16 天前
QT硬件通讯基础
qt·qt6·qt quick
喵呜角角2 个月前
QML鼠标右键菜单
qt·学习·qml·qt6·qt quick
三雷科技4 个月前
QSharedMemory使用详解
c++·qt·qt5·qt6·qt教程·qt入门·qsharedmemory
wangz764 个月前
用QT6、QML、FFMPEG写一个有快进功能的影音播放程序
c++·ffmpeg·qml·qt6·影音播放
丁劲犇5 个月前
使用 MSYS2 Qt6 发布绿色版的SDR软件无线电应用
usrp·qt6·msys2·软件无线电·sdr·发布·绿色版
逸云沙鸥のIHave@Dream8 个月前
Ubuntu 22.04 配置qtchooser默认启用 Qt6
linux·ubuntu·qt6·qtchooser
KINGES8 个月前
CLion搭建Qt开发环境,并解决目录重构问题(最新版)
mingw·msvc·cmake·qt6·clion
丁劲犇1 年前
使用MSYS2的静态Qt版本进行Widgets项目编译时需要注意的问题
开发语言·qt·static·qt6·msys2·mingw64·ucrt64
songisgood1 年前
QT6找不到QRegExpValidator类问题解决办法
正则表达式·qt6