日期:2014-05-16 浏览次数:20790 次
终于把opencv移植好了,心里那个爽啊,感觉整个世界都在为我让步。呵呵,废话少说,进入正题。
我用的系统是Fedora14(其实哪个版本都差不多的),确保自己的系统已经成功安装交叉编译环境,关于交叉编译环境的搭建就不必多说了,网上的教程一大堆呢。
你的系统上必须安装CMake,opencv2.0以后的版本必须用CMake来创建makefile,这也不难,网上搜搜。
小技巧:我在安装Fedora的时候把能安装的包都安装了,因为我是做开发的,这样会省去我开发中的很多工作。
那么我们就开始编译opencv吧,跟我走,Go,Go,Go!!!
1、准备好opencv2.1的源码包(我把我用的放在了网盘上)下载地址:http://pan.baidu.com/share/link?shareid=378302&uk=3305761005
2、解压OpenCV 2.1到/usr/local/OpenCV-2.1.0目录下
3、创建/usr/local/opencv-arm/目录,作为CMake编译arm版本的工作目录
4、在X环境下,运行cmake-gui如果你本机原来就有安装了cmake,那么cmake-gui应该就在/usr/bin目录下(find / -name cmake-gui 这个命令查找一下也可以的啊)
5、在终端界面,进入/usr/local/opencv-arm目录,运行make
编译发现下面错误:
Linking CXX executable ../../bin/opencv_createsamples
……
……
6、我来接你怎么解决,修改CMakeCache.txt,CMAKE_EXE_LINKER_FLAGS原来为空,加上-lpthread -lrt,重新编译,错误消除
7、运行make install ,将opencv生成的库和头文件安装到/usr/local/arm/lib/opencv
我把我自己编译好的库也共享给大家,可以直接拿来用。下载地址:http://pan.baidu.com/share/link?shareid=372078&uk=3305761005
接下来就很好办了,在Qt下使用opencv库 ,在 .pro中加入下面的东西:
INCLUDEPATH += /usr/local/arm/lib/opencv/include/opencv
LIBS += -L/usr/local/arm/lib/opencv/lib -lcvaux -lcv -lcxcore -lhighgui -lml
注意INCLUDEPATH是编译后的opencv,头文件所在的目录,LIBS是.so文件所在的目录
到现在就好了,想怎么写就怎么写你的Qt程序了。
参考文章:
Linux下opencv+Qt的移植 http://www.cnblogs.com/s_agapo/archive/2011/11/24/2262346.html
Qt下适用opencv库 http://blog.sina.com.cn/s/blog_5c70dfc80100qwi3.html
编译opencv for arm-linux http://blog.csdn.net/noodies/article/details/5798434