QT+OPENCV+Cmake安装文档
QT+OPENCV+Cmake安装文档
Windows10 的系统,注意先通读一遍安装文档!!!
1.软件安装名称:
Opencv3.2.0
Opencv_contrib3.2.0
Cmake 3.16.6-win64-x64.msi
QT qt-opensource-windows-x86-5.9.9
Opencv3.2.0直接解压安装
Cmake直接解压即可
Opencv_contrib解压即可
注意:以上所有的文件文件路径都都不能有空格
Opencv和Cmake安装,没有特别注意的和环境变量的配置,就直接解压安装一路默认就行,重点说一下QT5的安装
QT5安装
1.官网下载上面说的版本
2.安装的时候有一个注意的点,会让你选择下载的插件和编译器如下图,根据自己的需要勾选
我的是:勾选MSVC2015 64-bit和MinGW,其他的vs、UMP、安卓的都没选,剩下的全选了,
Tools里面我都勾选了
3.等待安装完,大概7个G多
4.安装完需要配置一下环境变量
我的是 E:\Qt\5.9.9\mingw53_32\bin 和 E:\Qt\Tools\mingw530_32\bin 放到环境变量的Path
下,就完成了,可以运行点击new project就可以新建工程了
3.检查文件完整性
(1)检查opencv/source是否是以下的内容,下载的opencv可能会缺少一些文件
(2)检查opencv/source/3rdparty (看一下是否存在libwebp文件夹)
4. 设置环境变量
将
D:\QTINSTALL\QT\Tools\mingw48_32\bin;
D:\QTINSTALL\cmake\bin;
D:\QTINSTALL\QT\5.1.0\mingw48_32\bin;
这三个路径添加到环境变量中
-
改变.cmake文件
将
D:\QTINSTALL\opencv\sources\cmake文件下的OpenCVCompilerOptions.cmake打开,
找到
add_extra_compiler_option(-Werror=non-virtual-dtor)
将其变为# add_extra_compiler_option(-Werror=non-virtual-dtor)
-
打开cmke/bin/cmake-gui,设置源文件目录和目标文件目录
(1)源文件目录必须为包含CmakeLists.txt文件的opencv目录 我的源文件目录为: E:/opencv/sources
目标文件目录可以自行设置,用于保存cmake编译opencv后的二进制代码,
我设置的目录E:/opencvBinary
7.点击configure,出现如下界面
编译器选择Specify native compilers,点击next
C编译器选择 D:/QTINSTALL/QT/Tools/mingw48_32/bin/gcc.exe
C++编译器选择 D:/QTINSTALL/QT/Tools/mingw48_32/bin/g++.exe
点击next
勾选Grouped,在ungrouped Entntries中设置下面几个文件目录
在Ungrouped Entries下找到Qt5Concurrent_DIR,Qt5Core_DIR,Qt5Gui_DIR,Qt5Test_DIR,Qt5Widgets_DIR,Qt5OpenGL_DIR,它们的Value分别填写为:
E:\Qt\5.9.9\mingw53_32\lib\cmake\Qt5Concurrent
E:\Qt\5.9.9\mingw53_32\lib\cmake\Qt5Core
E:\Qt\5.9.9\mingw53_32\lib\cmake\Qt5Gui
E:\Qt\5.9.9\mingw53_32\lib\cmake\Qt5Test
E:\Qt\5.9.9\mingw53_32\lib\cmake\Qt5Widgets
E:\Qt\5.9.9\mingw53_32\lib\cmake\Qt5OpenGL
这些路径都在QT安装的路径下
8.点击configure,一直点击configure,第一次点configure后,把勾选WITH_QT WITH_OPENGL WITH_PNG ,去掉WITH_IPP ENABLE_PRECOMPILED_HEADERS!!!
直到所有的红色都没有了,中间会有一个报错
下载opencv_ffmpeg.dll出现问题 ,是国内网络原因,总是超时或者服务器连接错误
解决方法是:到opencv安装目录下( E:\opencv\sources\3rdparty\ffmpeg )文件夹下,用记事本打开ffmpeg.cmake,里面有下载网址,
https://raw.githubusercontent.com/opencv/opencv_3rdparty/{FFMPEG_BINARIES_COMMIT}实际上是ffmpeg.cmake前面几行中set(FFMPEG_BINARIES_COMMIT “2a19d0006415955c79431116e4634f04d5eb5a74”)已经赋好了相应的值。所以只需要在浏览器中输入https://raw.githubusercontent.com/opencv/opencv_3rdparty/2a19d0006415955c79431116e4634f04d5eb5a74/ffmpeg/opencv_ffmpeg.dll并且回车就可以开始下载文件。
下载完后,在E:\opencv\sources\3rdparty\ffmpeg文件夹下有一个downloads文件夹,里面三个文件夹,每个文件夹下就是下载的文件,把这三个文件复制到E:\opencv\sources\3rdparty\ffmpeg文件夹下覆盖
9.然后点击configure,就会出现configure done,多按几次 configure,确保不会出现红色,
然后点击register,出现registering done
10.进入到cmake设置的目标文件夹中,我的是E:/opencvBinary
按住shift+右键单击,显示一个 打开命令行或者是Powershell 窗口(就是打开终端),打开后
执行 mingw32-make -j8, 100%后,在执行mingw32-make install ,这个过程一共30多分钟。
11.进一步配置环境变量
将E:\opencvBinary文件夹里面的文件只留下bin和lib文件夹,其余文件都删除
将E:\opencv\build文件夹下的include文件夹拷贝到E:\opencvBinary\文件夹下面,
再将bin目录即E:\opencvBinary\bin
添加到环境变量中
打开QT软件
新建QT项目,在.pro文件最后面加下面几行代码进行配置
INCLUDEPATH+=E:\opencvBinary\include\opencv\
E:\opencvBinary\include\opencv2\
E:\opencvBinary\include
LIBS+= E:\opencvBinary\lib\libopencv_*.a
13.完成全部安装
注:如果安装过程中出现其他错误请参照以下链接:
https://blog.****.net/u010847519/article/details/61196093