本文主要介绍如何搭建QT6+OpenCv的开发环境,基本流程如下
  1. 先安装CMake3.27.3,用来编译适用用QT的OpenCv的源码,安装完成后要配置系统的环境变量
  2. 安装Qt6的开发环境,并配置环境变量,注意一定要重启电脑才能生效
  3. 下载OpenCv的源码,用于后面的编译
  4. 上述环境准备好后,使用CMake来编译适配Qt的OpenCv源码
  5. 安装OpenCv
 
版本详情: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
  • 测试代码,加载并显示一张图片
  • 编译并运行项目,图片成功显示,表示配置成功!
 
 
 
 
 
 
 

搭建 QT6+OpenCv4.7+CMake的环境的更多相关文章

  1. Codeblocks + opencv + Cmake + minGW 环境搭建(一劳永逸版)

    应工作开发需要,今天搭建一个codeblocks的C++开发环境,需要配置opencv2.4.4的API协同开发. 1.为了避免不必要的配置编译器,下载codeblocks16.1带mingw编译器版 ...

  2. 32位Ubuntu12.04搭建Hadoop2.5.1完全分布式环境

    准备工作 1.准备安装环境: 4台PC,均安装32位Ubuntu12.04操作系统,统一用户名和密码 交换机1台 网线5根,4根分别用于PC与交换机相连,1根网线连接交换机和实验室网口 2.使用ifc ...

  3. 模拟搭建Web项目的真实运行环境(一)

    序言 最近尝试完整搭建一个Web项目的运行环境,总结一下这几个月学到的知识点. 后面的文章主要包括一下几个内容: A. 搭建一个Linux服务器,用来部署Redis.Mongo等数据存储环境: B. ...

  4. 第五章——搭建S3C6410开发板的测试环境

    搭建S3C6410开发板的测试环境 通过本章的学习学会了如何在开发板上安装Android.开发板是学习和开发嵌入式技术的主要硬件设备,想要顺利的通过linux驱动访问硬件,是不能在PC板上模拟的,需要 ...

  5. 如何搭建lamp(CentOS7+Apache+MySQL+PHP)环境 [转]

    在网上搜资料,自己在本地虚拟机上尝试搭建,弄了整整一天一夜,终于弄好了.网上的资料,虽然很多,但大多都是重复的,拿去试了之后,又很多都不能得到正确的结果.最终找到了适合我的linux环境的搭建方式;在 ...

  6. 利用grunt-contrib-connect和grunt-connect-proxy搭建前后端分离的开发环境

    前后端分离这个词一点都不新鲜,完全的前后端分离在岗位协作方面,前端不写任何后台,后台不写任何页面,双方通过接口传递数据完成软件的各个功能实现.此种情况下,前后端的项目都独立开发和独立部署,在开发期间有 ...

  7. 【前端福利】用grunt搭建自动化的web前端开发环境-完整教程

    jQuery在使用grunt,bootstrap在使用grunt,百度UEditor在使用grunt,你没有理由不学.不用! 1. 前言 各位web前端开发人员,如果你现在还不知道grunt或者听说过 ...

  8. Storm系列(一):搭建dotNet开发Storm拓扑的环境

    上篇博客比较了目前流行的计算框架特性,如果你是 Java 开发者,那么根据业务场景选择即可:但是如果你是 .Net 开发者,那么三者都不能拿来即用,至少在这篇文章出现之前是如此.基于上篇文章的比较发现 ...

  9. 转:【前端福利】用grunt搭建自动化的web前端开发环境-完整教程

    原文地址:http://blog.csdn.net/wangfupeng1988/article/details/46418203 jQuery在使用grunt,bootstrap在使用grunt,百 ...

  10. Android开发学习总结(一)——搭建最新版本的Android开发环境

    Android开发学习总结(一)——搭建最新版本的Android开发环境(转) 最近由于工作中要负责开发一款Android的App,之前都是做JavaWeb的开发,Android开发虽然有所了解,但是 ...

随机推荐

  1. Python基础 - python解释器

    Python解释器是什么 Python解释器本身也是个程序, 它是解释执行 Python代码的,所以叫解释器. 没有它,我们的Python代码是没有办法运行的. 怎么下载安装Python解释器   官 ...

  2. 2023-06-03:redis中pipeline有什么好处,为什么要用 pipeline?

    2023-06-03:redis中pipeline有什么好处,为什么要用 pipeline? 答案2023-06-03: Redis客户端执行一条命令通常包括以下四个阶段: 1.发送命令:客户端将要执 ...

  3. ARC142

    ARC142 考试情况:一眼订正,鉴定为做出前三题. A - Reverse and Minimize 分析题目性质可得三种情况: \(K\) 末尾有 \(0\) 最多只有 \(K\) 本身一个答案. ...

  4. flutter系列之:做一个会飞的菜单

    目录 简介 定义一个菜单项目 让menu动起来 添加菜单内部的动画 总结 简介 flutter中自带了drawer组件,可以实现通用的菜单功能,那么有没有一种可能,我们可以通过自定义动画来实现一个别样 ...

  5. CANoe_ Trace 和 Graphics 窗口的介绍和使用

    Canoe是一款用于汽车网络分析和仿真的工具,其中包括Trace和Graphics两个窗口,用于显示和分析CAN网络数据.以下是对Canoe的Trace和Graphics窗口的简要介绍和使用说明: 1 ...

  6. 基于C语言的泛类型循环队列

    循环队列多用于通信数据缓存中,尤其是在双方设备接收数据与处理数据不同步的情况下,使用循环队列先缓存通信数据,然后按照时间戳数据出队作出相应的处理,是一种比较合适的做法,在嵌入式编程中亦是如此.使用循环 ...

  7. Enhancingdecisiontreeswithtransferlearningforsentimenta

    目录 1. 引言 2. 技术原理及概念 2.1 基本概念解释 2.2 技术原理介绍 2.3 相关技术比较 3. 实现步骤与流程 3.1 准备工作:环境配置与依赖安装 3.2 核心模块实现 3.3 集成 ...

  8. 用 Golang 从0到1实现一个高性能的 Worker Pool(一) - 每天5分钟玩转 GPT 编程系列(3)

    目录 1. 概述 2. 设计 2.1 让 GPT-4 给出功能点 2.2 自己总结需求,再给 GPT 派活 3. 实现 3.1 你先随意发挥 3.2 你得让 Worker 跑起来呀 3.3 你说说 P ...

  9. BigCode 背后的大规模数据去重

    目标受众 本文面向对大规模文档去重感兴趣,且对散列 (hashing) .图 (graph) 及文本处理有一定了解的读者. 动机 老话说得好: 垃圾进,垃圾出 (garbage in, garbage ...

  10. Mybatis(映射器 mappers)

    MapperRegistry:注册绑定我们的Mapper文件 方式一: <!--每一个Mapper.XML都需要在Mybatis核心配置文件中注册--> <mappers> & ...