Ubuntu 全新编译安装 OpenCV 2.3


一段时间过去了,OpenCV出到2.3了,很兴奋地想试一试了,改进和增加了很多,具体请看http://opencv.willowgarage.com/wiki/OpenCV%20Change%20Logs

首先去下载OpenCV 2.3 for Linux

如果下载较慢,请到官方网站下载:http://sourceforge.net/projects/opencvlibrary/files/ (SVN repository has been migrated from SourceForge to https://code.ros.org/svn/opencv. )

在编译之前,确认你的机器里面有下面这些安装包

build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg62-dev libtiff4-dev cmake libswscale-dev libjasper-dev 

好了,下载之后,进入目录,解压

tar jxf OpenCV-2.3.0.tar.bz2  

然后,建议建一个专门的目录用来编译,以后再次编译的时候就方便了

 
  1. cd OpenCV-2.3.0/  
  2. mkdir release  
  3. cd release  

cmake,配置参数,生成Makefile,相信是看得懂的,配置了python库,更详细的请参见http://opencv.willowgarage.com/wiki/InstallGuide,这里有所有参数的解释

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON ..  

然后就更简单了

  1. make  
  2. sudo make install  

配置下库:写进这句:/usr/local/lib,保存

 sudo gedit /etc/ld.so.conf.d/opencv.conf  

然后运行这句,配置库就完成了

 sudo ldconfig  

OK,现在就可以试一试你自己的例子了

 g++ `pkg-config opencv --libs --cflags opencv` main.cpp -o main

不出问题的话,你就可以正常运行了!!!


------------------------------------------------------------------------------------------------------

好吧,我的机子上出问题了,摄像头打不开!!!请高人指点啊!


实在受不了,现在还没找出什么问题,没办法,只能装2.2了,sudo make uninstall...

摄像头能用了,看来是OpenCV的问题

对了,在编译OpenCV2.2的时候,如果出现这个问题:

 
  1. modules/highgui/src/cap_v4l.cpp:217:28: fatal error:    linux/videodev.h: No such file or directory  
  2. compilation terminated.  
  3. make[2]: *** [modules/highgui/CMakeFiles/opencv_highgui.dir/src/cap_v4l.o] Error 1  
  4. make[1]: *** [modules/highgui/CMakeFiles/opencv_highgui.dir/all] Error 2  
  5. make: *** [all] Error 2 

解决办法:

 sudo apt-get install libv4l-dev 

然后,把cap_v4l.cpp里的#include <videodev.h>换成 #include <libv4l1-videodev.h>就行了 

相关内容