【原文:http://www.haogongju.net/art/1685171】
1·安装g++编译器等
sudo apt-get install build-essential
从www.opencv.org.cn上下载opencv源代码。文件名为opencv-1.0.0.tar.gz
2, sudo apt-get install gtk2-devel 如果没有安装该库,则在整个过程安装结束后,运行代码显示结果时碰到一个温柔的提示,大意是rebuild the library with ... gtk2...。如果这个时候,回去./configure --enable-gtk, make , make install并且确认./configure结果中gtk支持之后,再来运行结果,依然会报该错误!解决方法是把安装目下的lib inculude share目录都删掉,再去./configure --enable-gtk && make && make install (运算符号:&& 表示当且仅当前面的命令成功时候执行该命令,同理 || 表示仅当前面的命令失败之后执行该命令)
3, sudo yum install libv4l-devel 这位解决CAM4l的问题准备库和头文件;
4, 可选,根据需要安装库,比如: sudo apt-get install libjpeg-devel, sudo apt-get install libtiff-devel;
5,修改cxmisc.h 中第133行,#elif 改为#else, 如果不改,make时会报不能为空之类的错误,编译语法错误容易改;
6,修改./otherlibs/highgui/cvcap_v4l:cpp中第208行:改为#include <libv4l.h>
修改第219行,在#include <linux/videodev2.h>前增加#include <libv4l2.h>
7,./configure --prefix=<install direcotry> --enable-gtk
8,修改cvconfig.h,最后增加#define CAMV4L,第6 和 第8 条解决了make时报undefine reference to XXXcav4XXX之类的错误。
9,make
10, make install