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版本软件的编译和安装

相关推荐
Edingbrugh.南空3 分钟前
Aerospike与Redis深度对比:从架构到性能的全方位解析
java·开发语言·spring
CodeCraft Studio42 分钟前
借助Aspose.HTML控件,在 Python 中将 HTML 转换为 Markdown
开发语言·python·html·markdown·aspose·html转markdown·asposel.html
QQ_43766431443 分钟前
C++11 右值引用 Lambda 表达式
java·开发语言·c++
aramae44 分钟前
大话数据结构之<队列>
c语言·开发语言·数据结构·算法
封奚泽优1 小时前
使用Python实现单词记忆软件
开发语言·python·random·qpushbutton·qtwidgets·qtcore·qtgui
liulilittle2 小时前
C++/CLI与标准C++的语法差异(一)
开发语言·c++·.net·cli·clr·托管·原生
daixin88482 小时前
什么是缓存雪崩?缓存击穿?缓存穿透?分别如何解决?什么是缓存预热?
java·开发语言·redis·缓存
程序员编程指南2 小时前
Qt 数据库连接池实现与管理
c语言·数据库·c++·qt·oracle
你我约定有三2 小时前
RabbitMQ--消息丢失问题及解决
java·开发语言·分布式·后端·rabbitmq·ruby
张北北.3 小时前
【深入底层】C++开发简历4+4技能描述6
java·开发语言·c++