Ubuntu 9.04编译安装OpenCV2.2详解(转贴并修改部分)

来源:互联网 发布:有网络赌钱赢的吗 编辑:程序博客网 时间:2024/05/10 23:13

 

转帖自http://www.linuxidc.com/Linux/2011-05/36407.htm,原文是在Ubuntu11.04下的,在Ubuntu9.04下有几个问题需要修正,见下面标注的地方。

Ubuntu 9.04编译安装OpenCV2.2详解

 

1、下载安装CMake for Linux 

     下载地址:http://www.cmake.org/cmake/resources/software.html

     我下载的版本是cmake-2.8.4,下载文件cmake-2.8.4.tar.gz

     建立安装文件夹,路径为/home/(你的登录用户名)/cmake ,命令:sudo mkdir ~/home/(你的登录用户名)/cmake

 

     解压cmake包,进入刚刚创建的文件夹,输入tar zxvf ./cmake-2.8.4.tar.gz

     编译安装,进入文件夹/home/(你的登录用户名)/cmake/cmake-2.8.4,命令:sudo ./bootstrap; make; make install

 

     打开在用户主目录,用vim或者gedit打开修改/home/(你的登录用户名)/.bashrc, 增加一行 PATH=$PATH:/home/(你的登录用户名)/program/cmake/cmake-2.8.4/bin:(11.04可能是这个,在9.04版本里camke放在“/usr/local/bin/”目录下,注意啊,这个是不同的,对应修改)

 

2、下载Opencv for linux 

     首先下载opencv的源文件包,下载地址:http://www.opencv.org.cn/download/OpenCV-2.2.0.tar.bz2

     创建opencv安装目录/home/(你的登录用户名)/Opencv/,命令:sudo mkdir ~/home/(你的登录用户名)/Opencv

     解压文件,命令 tar jxvf ./OpenCV-2.2.0.tar.bz2

3、在编译安装opencv2.2之前还要安装一些必要的库

      安装方式如下:sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg62-dev libtiff4-dev cmake libswscale-dev libjasper-dev pkg-config,有些可能已经装过了,但最好确认以上的都装过了,况且Ubuntu的apt-get用起来非常方便。

(注意啦:如果是9.04的话,我安装的时候,有些包不能下载,先运行一下sudo apt-get update,更新列表,然后再运行上面的命令就全部可以啦)

 

4、修改OpenCV2.2源代码

     在编译之前需要打一个补丁Ticket #862: OpenCV-2.2-nov4l1.patch,否则在编译时会报错而停在80%左右处,其实只是改了两个文件中的几行代码,修改如下:

     OpenCV-2.2.0/modules/highgui/src/cap_v4l.cpp 217行处

     #include

     <linux/videodev.h> 

                 |改成

     #ifdef HAVE_CAMV4L 

     #include <linux/videodev.h> 

     #endif 

     OpenCV-2.2.0/modules/highgui/src/cap.cpp   174行处

     #if defined(HAVE_CAMV4L) || defined (HAVE_CAMV4L2) 

                  |改成

     #if defined(HAVE_CAMV4L) 

      完成

5、编译安装OpenCV2.2

     在解压目录下创建build文件夹,运行cmake,命令:cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON ..

     注意输入"..",这个表示上一级目录

     这时makefile已经生成了,可以看到显示默认安装目录是/usr/local

     然后在OpenCV解压目录下刚刚创建build的目录下输入make。

     完成后继续输入命令:sudo make install ,进行安装。

     接下来要给系统加入opencv库的环境变量(也就是库存放的路径,注意不是解压路径)

     用vim打开/etc/ld.so.conf,注意要用sudo打开获得权限,不然无法修改,如:sudo vim /etc/ld.so.conf,在文件中加上一行 /usr/loacal/lib,/user/loacal就是makefile中指定的安装路径

     再运行sudo ldconfig,

     修改bash.bashrc文件,sudo gedit /etc/bash.bashrc

     在文件末尾加入:

     PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig

     export PKG_CONFIG_PATH

再增加:

   OpenCV_DIR=/home/登录用户名/Opencv/OpenCV-2.2.0/

   export OpenCV_DIR

   否则等一下的sample无法运行的。

 

     再打开一个新的控制台,然后重启或者注销。

     编译安装完毕!^_^

6、初试OpenCV

     这里尝试编译运行opencv提供的sample/c下的例子

     根据sample中的说明,建立一个example-release文件夹来存放编译结果,命令 sudo mkdir ~/home/(你的登录用户名)/Opencv/OpenCV-2.2.0/samples/c/sample-release

     然后进入刚刚创建的文件夹,cd ~/home/(你的登录用户名)/Opencv/OpenCV-2.2.0/samples/c/sample-release

     使用cmake生成makefile文件,命令如下 cmake ~cd ~/home/(你的登录用户名)/Opencv/OpenCV-2.2.0/samples/c/example_cmake

     然后在sample-release下编译,命令:make

     OK可执行文件生成成功!

     最后看看效果,输入:./opencv_example

     o(∩∩)o...哈哈我们要得东西出来了!

 

原创粉丝点击