(更新v2018.1.24版)Opencv Qt 学习笔记(一)安装qt opencv 环境Win7(cmake3.9.1和Opencv3.3.0)

开始配置:

1.下载所需工具:

(2) OpenCV:  http://opencv.org/


2.安装Qt ;(记得添加环境变量F:\C++\qt5.6.1\Tools\mingw492_32\bin:F:\C++\qt5.6.1\5.6\mingw49_32\bin)

3.安装Cmake;

4. 安装OpenCV;

5. CMake编译OpenCV(此处需要设置PC机的环境变量把QT目录下的:..\Tools\mingw492_32\bin和..\5.6\mingw49_32\bin):
(1)打开CMake-gui.exe,第一行输入(../opencv-3.3/opencv/sources) opencv解压出来的源码,第二行填写你要创建的文件夹目录。
2 Configure(不断的Configure直到没有红色项为止);
(3)Generate;



CMake勾选:WITH_OPENGL和WITH_QT两项



CMake上去掉:

(4)上面两部都出现done后,打开cmd进入刚刚创建的目标目录,mingw32-make -j2 (j后面的数字代表核心数,根据硬件来选择);

(5)编译通过后执行mingw32-make install安装;

(6)随后可以把编译目录下的 (intall\include和install\x86\mingw\下的lib和bin都考到一个方便的文件夹然后添加bin路径到环境变量);

编译出错笔记:

1、

OpenCV的编绎问题真多呀,一般代码可能不存在问题,问题主要在工具,开源工具的版本,工具搭配,参数设置,都会影响最终的编绎成功

之前顺手编译一个2.49的,竟然非常顺,一个问题也没发现,换成3.3和2.4.13问题真多,总结一下。

当然,有时新版本也会出现问题。

1.opencv出了3.3,就下载下来编编试试。

出现问题,opencv的github查到解决方案,据说只在3.3才有

  • OpenCV => 3.3.0-rc
  • Operating System / Platform => Windows 10 - 64 Bit
  • Compiler => Visual Studio 15 2017
  • cmake => 3.9.0-rc5

大约会提示类似错误,windres.exe输入参数为空的样子 :

:\PROGRA~2\minGW\bin\windres.exe: invalid option -- W,

问题原因在cmake,cmake版本大于3.9会有这个问题,我的是3.8,没有这个问题,网上一个哥们说他的3.7也没有这个问题

解决方法:

CMAKE中的ENABLE_PRECOMPILED_HEADERS去掉勾选就这个了:


查找自:http://blog.csdn.net/cnbloger/article/details/77609108

2、

modules\videoio\CMakeFiles\opencv_videoio.dir\build.make:187: recipe for target 'modules/videoio/CMakeFiles/opencv_videoio.dir/src/cap_dshow.cpp.obj' failed
mingw32-make[2]: *** [modules/videoio/CMakeFiles/opencv_videoio.dir/src/cap_dshow.cpp.obj] Error 1
CMakeFiles\Makefile2:2867: recipe for target 'modules/videoio/CMakeFiles/opencv_videoio.dir/all' failed
mingw32-make[1]: *** [modules/videoio/CMakeFiles/opencv_videoio.dir/all] Error 2
Makefile:161: recipe for target 'all' failed
mingw32-make: *** [all] Error 2

解决方法:

opencv的源码文件cap_dshow.cpp中添加

在#include "DShow.h"这行的上面加一行#define NO_DSHOW_STRSAFE

查自:http://blog.csdn.net/fengxueniu/article/details/77478669

原文网址:http://answers.opencv.org/question/62580/not-able-to-build-opencv3-rc1-with-debug-build-type/

3、

"E:/C++" "MATCHES" "^E:/C++/Opencv 3.0/opencv/sources" "OR" "E:/C++" "MATCHES" "^E:/C++"

Regular expression "^E:/C++/Opencv 3.0/opencv/sources" cannot compile

解决方法:

Cmake路径不能出现++

4、

v:\MinGW-Builds\mingw64\bin\windres.exe: supported targets: pe-x86-64 pei-x86-64 pe-bigobj-x86-64 elf64-x86-64 elf64-l1om elf64-k1om pe-i386 pei-i386 elf32-i386 elf32-iamcu elf64-little elf64-big elf32-little elf32-big plugin srec symbolsrec verilog tekhex binary ihex modules/core/CMakeFiles/opencv_core.dir/build.make:1642: recipe for target `modules/core/CMakeFiles/opencv_core.dir/vs_version.rc.obj' failed make[2]: *** [modules/core/CMakeFiles/opencv_core.dir/vs_version.rc.obj] Error 1 CMakeFiles/Makefile2:1512: recipe for target `modules/core/CMakeFiles/opencv_core.dir/all' failed make[1]: *** [modules/core/CMakeFiles/opencv_core.dir/all] Error 2 Makefile:162: recipe for target `all' failed make: *** [all] Error 2

解决方法:


去掉ENABLE_PRECOMPILED_HEADERS再make(cmake-3.9+版本的bug




  • 11
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值