win10+Qt5.13+OpenCV3.4.6环境搭建
win10-x64 + Qt5.13 + OpenCV3.4.6-x64 环境搭建
cmake:cmake-3.15.0-rc3-win64-x64
准备:安装Qt(加MingGW64位编译器)+ 安装OpenCV(64位)+ 安装cmake-x64
添加环境变量:
D:\Qt\Qt5.13.0\5.13.0\mingw73_64\bin
D:\Qt\Qt5.13.0\Tools\mingw730_64\bin
D:\OpenCV\build\x64\vc15\bin
D:\cmake-3.15.0-rc3-win64-x64\bin
D:\opencv3.4.6-build\install\x64\mingw\bin
注意:安装OpenCV时解压路径,(重要的事情说三遍<我自己就掉进这个坑里,苦闷了两天>)
*****opencv所在的文件夹名一定不能有空格***** 譬如:“Program files”
*****opencv所在的文件夹名一定不能有空格*****
*****opencv所在的文件夹名一定不能有空格*****
1.运行cmake文件夹bin中gui开始配置
where is the source code中填入OpenCV的源码路径
where to build the binaries中填入编译后生成文件的存放位置D:\opencv3.4.6-build(可自己新建一个文件夹)
Advanced勾选
点击下方的Configure按钮,会弹出配置框
Specify the generator for this project下拉框中选择MinGW Makefiles,然后圈选Specify native comilers,点击Next
之后会让选择MinGW的C/C++编译器位置,填入对应编译器位置(在Qt编译器中确认,一般在Qt安装目录中Tools文件夹内),
Fortran不用填写,配置完后点击Finsh,进行配置验证。
然后会出现一系列红色的value
勾选:WITH_QT、WITH_OPENGL
基于编译中出现的问题,直接一次性不勾选:WITH_IPP ENABLE_PRECOMPILED_HEADERS WITH_OPENCL_D3D11_NV
然后重新 Configure,直到红色选项消失,Generate
2.编译前:opencv\cmake\下找到“OpenCVCompilerOption.cmake”,打开注释掉#add_extra_compiler_option(-Werror=non-virtual-dtor)
3.编译:在D:\opencv3.4.6-build目录下,shift+右键打开shell,执行指令mingw32-make -j 8(8线程快速编译)
4.安装mingw32-make:编译完成后执行指令mingw32-make install
5.Qt中配置OpenCV:新建或打开工程,在pro文件中添加如下两语句,一个是编译后的头文件夹,一个是静态库,一个是动态库,两个库选一个使用
注意:LIBS += -L的后面一定要加‘\’(否则编译报错)
INCLUDEPATH += D:\opencv3.4.6-build\install\include
LIBS += -L \
#D:\opencv3.4.6-build\install\x64\mingw\lib\libopencv_*.a
D:\opencv3.4.6-build\install\x64\mingw\bin\libopencv_*.dll
工程上右键执行qmake,编译通过即可。
6.测试CPP代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include "mainwindow.h" #include "ui_mainwindow.h" #include <opencv2/opencv.hpp> using namespace cv; MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui( new Ui::MainWindow) { ui->setupUi( this ); Mat srcImg = imread( "D:\\_Diagonal.jpg" ); imshow( "1" ,srcImg); } MainWindow::~MainWindow() { delete ui; } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)