Qt5.14.2+Cmake使用mingw64位编译opencv4.5成功图文教程

一、下载安装相关编译环境软件

1.1 Python3.8:安装路径:C:\Users\Administrator\AppData\Local\Programs\Python\Python38-32 安装包:python3.8.exe

1.2 QT5.14.2:安装路径:C:\Qt\Qt5.14.2

1.3 opencv4.5:解压路径D:\opencv\;安装包:opencv-4.5.0-vc14_vc15.exe

1.4 cmake-3.24:安装路径:C:\Program Files\CMake 安装包:cmake-3.24.0-win32-x86.exe

1.5 Java18:安装路径:C:\Program Files\Java\jdk-18.0.1 安装包:JavaSEDevelopmentKit.exe

二、打开我的电脑属性,设置环境变量Path包含如下配置:

C:\Program Files\CMake\bin;

C:\Qt\Qt5.14.2\5.14.2\mingw73_64\bin;

C:\Qt\Qt5.14.2\Tools\mingw73_64\bin;

C:\opencv\build\x64\vc15\bin;

3、打开CMake软件进行配置

点击 Configure,设置编译器

Specify the generator for this project: MinGW Makefiles

Specify native compilers

Next

Compilers C: C:/Qt/Qt5.14.2/Tools/mingw730_64/bin/gcc.exe

Compilers C++: C:/Qt/Qt5.14.2/Tools/mingw730_64/bin/g++.exe

Finish

设置源码位置:D:/opencv/sources

设置生成项目位置:D:/opencv/build_mingw64

点击Configure按钮后配置对应选项

WITH_OPENGL 勾选

WITH_QT 不勾选

OPENCV_ENABLE_ALLOCATOR_STATS 不勾选

WITH_OPENCL_D3D11_NV 不勾选

其中:OPENCV_VS_VERSIONINFO_SKIP需要点击Add Entry按钮手工新增,OPENCV_VS_VERSIONINFO_SKIP BOOL 1.


4、下载ffmpeg文件到指定位置

下载网址:
https://raw.githubusercontent.com/opencv/opencv_3rdparty/6152e132572dfdaa32887eabeb7199bef49b14dc/ffmpeg/ffmpeg_version.cmake

https://raw.githubusercontent.com/opencv/opencv_3rdparty/40b4666d1aa374205fd61373496e15d92ecd5313/ffmpeg/opencv_videoio_ffmpeg.dll

https://raw.githubusercontent.com/opencv/opencv_3rdparty/40b4666d1aa374205fd61373496e15d92ecd5313/ffmpeg/opencv_videoio_ffmpeg_64.dll

存放地址:

D:\opencv\build_mingw64\3rdparty\ffmpeg\ffmpeg_version.cmake​

D:\opencv\build_mingw64\3rdparty\ffmpeg\opencv_videoio_ffmpeg.dll

D:\opencv\build_mingw64\3rdparty\ffmpeg\opencv_videoio_ffmpeg_64.dll

5、编译项目文件:

点击Generate按钮后,生成项目文件完成。

6、开始菜单中打开Qt目录下的mingw64菜单,进入编译窗口。

中跳转到到指定目录,执行下面命令:

D:\opencv\build_mingw64>mingw32-make -j 8

D:\opencv\build_mingw64>mingw32-make install

编译到68%时候会出错,需要运行新的mingw64窗口,执行命令

切换目录cd D:\opencv\build_mingw64\modules\word\CMakeFiles\opencv_world.dir

执行指令:C:\Qt\Qt5.14.2\Tools\mingw730_64\bin\windres.exe D:\opencv\build_mingw64\modules\world\vs_version.rc -O coff .\vs_version.rc.obj


日志记录如下:

D:\opencv\build_mingw64\modules>cd world

D:\opencv\build_mingw64\modules\world>cd CMakeFiles

D:\opencv\build_mingw64\modules\world\CMakeFiles>cd opencv_world.dir

D:\opencv\build_mingw64\modules\world\CMakeFiles\opencv_world.dir>C:\Qt\Qt5.14.2\Tools\mingw730_64\bin\windres.exe .\vs_version.rc -O coff .\vs_version.rc.obj

gcc: error: .\vs_version.rc: No such file or directory

gcc: warning: '-x c' after last input file has no effect

gcc: fatal error: no input files

compilation terminated.

C:\Qt\Qt5.14.2\Tools\mingw730_64\bin\windres.exe: preprocessing failed.

D:\opencv\build_mingw64\modules\world\CMakeFiles\opencv_world.dir>C:\Qt\Qt5.14.2\Tools\mingw730_64\bin\windres.exe D:\opencv\build_mingw64\modules\world\vs_version.rc -O coff .\vs_version.rc.obj

D:\opencv\build_mingw64\modules\world\CMakeFiles\opencv_world.dir>mingw32-make.exe -j 8

mingw32-make.exe: *** No targets specified and no makefile found. Stop.

D:\opencv\build_mingw64\modules\world\CMakeFiles\opencv_world.dir>cd ../../../

D:\opencv\build_mingw64\modules>mingw32-make.exe -j 8


直到正确编译结束后,执行安装指令:mingw32-make install

​至此完成opencv对应的mingw-64版本软件的编译和安装

相关推荐
我爱Jack4 分钟前
ObjectMapper 在 Spring 统一响应处理中的作用详解
java·开发语言
小白杨树树19 分钟前
【SSM】SpringMVC学习笔记8:拦截器
java·开发语言
冷心笑看丽美人22 分钟前
Spring MVC 之 异常处理
java·开发语言·java-ee·spring mvc
超级小忍23 分钟前
Java集合中Stream流的使用
java·开发语言
搏博35 分钟前
将图形可视化工具的 Python 脚本打包为 Windows 应用程序
开发语言·windows·python·matplotlib·数据可视化
zm1 小时前
极限复习c++
开发语言·c++
追风赶月、1 小时前
【QT】认识QT
开发语言·qt
秋田君2 小时前
深入理解JavaScript设计模式之闭包与高阶函数
开发语言·javascript·设计模式
蜘蛛侠..2 小时前
Java中的阻塞队列
java·开发语言·优先级队列·阻塞队列·无界队列·有界队列·数组结构
byte轻骑兵2 小时前
【C++高级主题】命令空间(五):类、命名空间和作用域
开发语言·c++