在安装OpenCV时最需要注意的是,OpenCV库,也就是我们需要的dll和动态库需要我们使用CMake来生成。

虽然在官网上下载得到的文件中已经包含了库文件和.h等头文件,但是在具体开发中编译器编译后的源文件都会和库文件去进行链接。

这就导致不同的编译器可能需要不同的库。所以,下载得到源文件之后,要用指定的编译器重新编译。

0. 需要的工具

  • Qt Creator
  • OpenCV
  • CMake
  • cmd

1. Qt Creator安装

这里Qt Creator的安装不在赘述,由于Qt提供的在线下载器太慢,可以直接去qt的离线下载界面下载,使用迅雷会比较快。详细操作可以参考这里。笔者使用的是5.9.0版本。

注意,这里需要在环境变量中的Path变量下添加Qt\Qt5.9.0\Tools\mingwxx_xx\bin路径。例如我在这里添加了F:\Qt\Qt5.9.0\Tools\mingw530_32\bin,否则后面的CMake可能在Configure过后没有对应的选项!

2. OpenCV的下载安装

OpenCV也可以直接在官网下载,这里选择对应的Windows版本,下载后安装。

安装完成后,在环境变量中添加Path变量,我添加的地址为F:\environment\opencv\build\bin。

3. CMake的下载使用

CMake可以直接在官网下载,注意安装的是带有界面的cmake-3.6.1-win64-x64.msi。

安装后打开cmake-gui.exe,Browse Source下选择安装的opencv下的sources文件夹,Browse Build可在opencv下新建一个release目录并选择,完整后点击左下角的Configure,选择MinGW Makefiles。

点击后CMake开始运行,过一段时间,中间会出现许多红色的选项,勾选WITH_OPENGL和WITH_QT,再次点击Configure。

运行完毕后可能还会出现部分红色选项,分别以下表选择对应项目。(有可能只有部分)

Name Value
QT_QMAKE_EXECUTABLE .../Qt/Qt5.3.1/5.3/mingw482_32/bin/qmake.exe
QT_MKSPECS_DIR .../Qt/Qt5.3.1/5.3/mingw482_32/mkspecs
QT_QTCORE_LIBRARY_DEBUG .../Qt/Qt5.3.1/5.3/mingw482_32/bin/Qt5Cored.dll
QT_QTCORE_LIBRARY_RELEAS .../Qt/Qt5.3.1/5.3/mingw482_32/bin/Qt5Core.dll
QT_QTCORE_INCLUDE_DIR .../Qt/Qt5.3.1/5.3/mingw482_32/include/QtCore/5.3.1/QtCore
Qt5_DIR .../Qt/Qt5.3.1

注意:如果你在安装Qt5后,没有给Qt5添加环境变量的话,那么在这一步,CMake软件是不会找到这些和Qt5相关的项的。

配置完成后再次Configure,没有红色选项,CMAKE_BUILD_TYPE选择Release类型,再次点击Configure后没有报错,点击Generate

在Generate结束后需要使用cmd来最后编译生成我们需要的动态dll库。

4. 在cmd中使用mingw32-make命令构建dll库

打开cmd,使用cd命令进入我们刚才在CMake里Browse Build选项中选择的目录,笔者的为F:\environment\opencv\release。(这里可能cd不进去,Windows下切换磁盘直接输入磁盘符+冒号就可以切换到其他盘了)。

f:

cd F:\environment\opencv\release

mingw32-make

等待构建成功后,该目录下的include目录和lib目录下就生成了我们需要的库了。

5. 在Qt Creator的.pro文件中添加配置

在你需要使用OpenCV的项目的.pro文件中添加配置

INCLUDEPATH += E:\opencv-4.0.1-Sources\opencv-build\install\include

LIBS += E:\opencv-4.0.1-Sources\opencv-build\lib\libopencv_*.a

最新文章

  1. MySQL备份还原——AutoMySQLBackup介绍
  2. hdu 5876 (补图BFS) Sparse Graph
  3. easyui中 在子tabs中 添加新的tabs
  4. [CareerCup] 7.7 The Number with Only Prime Factors 只有质数因子的数字
  5. Well, let's start everything from the very beginning.
  6. SequoiaDB 1.5 版本发布
  7. 02day1
  8. ACM YTU 2018 母牛的故事
  9. Android 之窗口小部件详解(三)  部分转载
  10. cocos2d-x-2.2.0_win7+vs2010
  11. 解决Fileupload 在IE 10 中需要双击的问题
  12. ACM Strange fuction
  13. Demo1
  14. 容器云技术选择之kubernetes和swarm对比
  15. Linux内存管理 (11)page引用计数
  16. 大数据Hadoop——HDFS Shell操作
  17. PSR-1 基本代码规范
  18. jconsole工具使用
  19. iOS 打包方式
  20. transaction注解分析

热门文章

  1. 个人c#编码约定 继承C#编码约定
  2. Oracle之表和字段的注释
  3. Kubernetes集群搭建(详细)
  4. Windows命令(ping、telnet、netstat详解)
  5. Qt:QDateTime
  6. MIPI CSI-2 像素打包格式解析
  7. JAVA_Scanner 键盘输入
  8. 字符串格式化String.Format
  9. Hadoop3.x完全分布式搭建(详细)
  10. Spring源码之九finishRefresh详解