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

相关推荐
Vitalia2 分钟前
从零开始学Rust:枚举(enum)与模式匹配核心机制
开发语言·后端·rust
双叶83628 分钟前
(C语言)虚数运算(结构体教程)(指针解法)(C语言教程)
c语言·开发语言·数据结构·c++·算法·microsoft
@hdd1 小时前
Qt实现HTTP GET/POST/PUT/DELETE请求
qt·http
一个public的class2 小时前
什么是 Java 泛型
java·开发语言·后端
士别三日&&当刮目相看2 小时前
JAVA学习*Object类
java·开发语言·学习
invincible_Tang2 小时前
R格式 (15届B) 高精度
开发语言·算法·r语言
一只小松许️2 小时前
Rust闭包详解
开发语言·rust
独好紫罗兰3 小时前
洛谷题单2-P5715 【深基3.例8】三位数排序-python-流程图重构
开发语言·python·算法
阳光_你好3 小时前
详细说明Qt 中共享内存方法: QSharedMemory 对象
开发语言·数据库·qt
鹿屿二向箔3 小时前
阀门流量控制系统MATLAB仿真PID
开发语言·matlab