win7+qt4+qtcreator+OpenCV 2.4.10的开发环境搭建
来源:互联网 发布:免越狱安装软件 编辑:程序博客网 时间:2024/06/06 13:59
本文转自http://blog.csdn.net/qiurisuixiang/article/details/8665278/,在他的基础上,建议读者先看我的前一篇博客《QtCreator2.8.0+QtOpenSource4.8.5环境配置(初学者必看)》,按照这篇博客配置好qt之后,再参照这篇博客的内容,便可一次性完成win7+qt creator+qt+opencv 2.4.10的全部配置,非常实用。
0 编译、配置OpenCV的工程相当曲折,编译OpenCV不下5次,一开始还以为是自己的配置、编译步骤有问题,后来发现原来是自己电脑装的Qt Creator版本有点低,里面的MingW版本较低,而OpenCV下载的是最新版本,最新版本的OpenCV需要高版本的MingW。最后果断换成高版本Qt Creator,终于编译成功。
1 下载所需工具
(1)OpenCV 下载地址http://opencv.org/,推荐下载opencv 2.4.10版本。
(2)CMake 下载地址http://www.cmake.org/cmake/resources/software.html
2 安装Qt Creator,过程很简单,一直下一步就OK,具体可见我的博客QtCreator2.8.0+QtOpenSource4.8.5环境配置(初学者必看)
3 安装OpenCV,设置解压路径就OK
4 安装CMake,过程同样很简单(注意:(1)安装路径不能有中文和空格(2)勾选加入所有境变量中)
5 目前最新的OpenCV版本,安装之后的目录下面有源码和个版本的lib和dll,不过为避免出现问题,还是自己编译
6 将C:\Qt\MinGW\bin加入系统的Path环境变量(假设Qt Creator安装在C盘)
7 打开CMake,使用CMake编译OpenCV。配置源码路径与生成的目标路径
(1)源码路径:要选择OpenCV安装目录下含有如下文件的文件夹
(2)目标路径:可以随意设置
8 点击Configure配置按钮。在弹出的对话框中选择MinGW makefiles,选择specify native compileers,然后在c那里选择mingw\bin\gcc.exe,c++那里选择mingw\bin\g++.exe点击Finish按钮,开始编译
9 CMake编译结束界面如下图,勾选生成列表中的WITH_OPENGL和WITH_QT两项,其他项最好不要改动
遇到一个问题说qtcore找不到等等,最后解决办法是把C:\Qt\Qt4.8.0\4.8\mingw53_32\lib\cmake
10 再次点击Configure按钮,红色消失
11 点击Generate按钮,生成makefile文件,成功后,底下会提示Generating done
12 打开cmd,进入刚才设置的目标路径(C:\OpenCV),输入mingw32-make命令开始编译(这里特别提醒,也是我犯错的地方,有的之前装过其他版本mingw的可能在环境变量有它的路径,把它删掉,把上篇博客提供的mingw的bin目录加入环境变量,否则当你后面输入mingw32-make的时候,系统不是默认你编译qt4时候的mingw,而是你之前安装的mingw,这就会导致编译失败或者编译出来无法使用opencv的情况,一定注意,最好按照我前一篇博客的步骤安装qt后在参照这个博客配置opencv)
可能输入ming32-make之后会报以下错误:
No targets specified and no makefile found,这个时候注意下cmake-gui在选择generator的时候是不是migw makefile,我之前默认为vs2013 win64的generator了
,
所以到了这一步就报以上错误,如果你也是,重新cmake,选择generator的时候注意下就好了。
13 此过程较为漫长,建议关掉杀毒软件可能会快些,在我的ThinkPad T420上耗时30分钟
14 执行mingw32-make install,此过程大约需要1到2分钟
15 下面开始配置Qt Creator的OpenCV开发环境,拷贝下面三个文件夹放在同一个文件夹下(只需这三个目录,其余生成的文件和文件夹可以删除,以节省磁盘空间)
(1)OpenCV-2.4.10安装目录下的build/include目录
(2)CMake目标路径下,MinGW编译后的bin目录
(3)CMake目标路径下,MinGW编译后的lib目录
16 拷贝三个目录到同一目录后的结构如下图(我删除了原来的CMake目标目录中的其他目录,拷贝进来了include目录)
17 将bin目录添加到系统环境变量,下图中是qt5.0.1,我的是qt4,具体安装qt4见我上篇博客。
18 至此Qt Creator下的OpenCV开发环境已经配置好,下面在Qt Creator下测试是否已经配置成功
19 打开Qt Creator,新建一个空工程,然后添加一个cpp文件,任意命名
20 在pro文件中添加如下OpenCV的依赖文件
INCLUDEPATH+=C:\OpenCV\include\opencv\
C:\OpenCV\include\opencv2\
C:\OpenCV\include
LIBS+=C:\OpenCV\lib\libopencv_calib3d244.dll.a\
C:\OpenCV\lib\libopencv_contrib244.dll.a\
C:\OpenCV\lib\libopencv_core244.dll.a\
C:\OpenCV\lib\libopencv_features2d244.dll.a\
C:\OpenCV\lib\libopencv_flann244.dll.a\
C:\OpenCV\lib\libopencv_gpu244.dll.a\
C:\OpenCV\lib\libopencv_highgui244.dll.a\
C:\OpenCV\lib\libopencv_imgproc244.dll.a\
C:\OpenCV\lib\libopencv_legacy244.dll.a\
C:\OpenCV\lib\libopencv_ml244.dll.a\
C:\OpenCV\lib\libopencv_objdetect244.dll.a\
C:\OpenCV\lib\libopencv_video244.dll.a
备注:其实有种简单的做法,但是有个缺点是可能包含链接库较多
INCLUDEPATH+=C:\OpenCV\include\opencv\
C:\OpenCV\include\opencv2\
C:\OpenCV\include
LIBS+=C:\OpenCV\lib
21 main.cpp文件中内容如下
#include"cv.h"
#include"cxcore.h"
#include"highgui.h"
intmain(intargc,char*argv[])
{
//声明IplImage指针
IplImage*pImg;
//载入图片
pImg=cvLoadImage("E:/OpenCV/FirstOpenCV/home.jpg",1);
//创建窗口
cvNamedWindow("Image",1);
//显示图像
cvShowImage("Image",pImg);
//等待按键
cvWaitKey(0);
//销毁窗口
cvDestroyWindow("Image");
//释放图像
cvReleaseImage(&pImg);
return0;
}
22 运行程序,按键盘上任意键可以退出
- win7+qt4+qtcreator+OpenCV 2.4.10的开发环境搭建
- Qt4开发环境搭建
- Win7下搭建Qt+OpenCV开发环境
- Win7下 OpenCV+Qt开发环境搭建
- win7 c/c++ opencv 开发环境搭建
- qt4+opencv的搭建
- ubuntu下QT4开发环境的搭建
- ubuntu下QT4开发环境的搭建
- Ubuntu下QT4开发环境的搭建
- Qt4与VS2008开发环境的搭建
- QT4.8.5交叉开发环境的搭建
- Ubuntu12.04安装Qt4.8集成开发环境(QtCreator)
- win7 环境 Android ndkr8 + opencv 开发小记----环境搭建
- Ubuntu搭建QT4开发环境
- 搭建嵌入式QT4开发环境
- 搭建嵌入式QT4开发环境
- 搭建嵌入式QT4开发环境
- 搭建嵌入式QT4开发环境
- C++字符串和字符串结束标志
- B-树和Hash索引区别
- java udp传输实例
- Android 多线程之IntentService 完全详解
- 链表中倒数第k个结点
- win7+qt4+qtcreator+OpenCV 2.4.10的开发环境搭建
- Android性能优化总结
- Angularjs留存(一)
- 要么读书,要么健身,要么恋爱(三)城南旧事
- 使用merge标签自定义View
- 各种数据库信息查看命令
- zynq学习06 zynq的PL中加入的AXI_GPIO IP核来控制GPIO操作
- html/css网站demo实战
- 119. PHP 性能问题(2)