Linux下安装OpenCV过程记录,04编译安装OpenCV2

2019-10-15 13:06 来源:未知

今天在Linux下安装opencv,许久没折腾Linux,都忘光了。

1、下载安装CMake for Linux
     下载地址:
     我下载的版本是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

系统是Ubuntu 9.04,其他版本Linux应该差不多。装在vmware 虚拟机下,主机为windows xp。

     打开在用户主目录,用vim或者gedit打开修改/home/(你的登录用户名)/.bashrc, 增加一行 PATH=$PATH:/home/(你的登录用户名)/program/cmake/cmake-2.8.4/bin:
2、下载Opencv for linux
     首先下载opencv的源文件包,下载地址:
     创建opencv安装目录/home/(你的登录用户名)/Opencv/,命令:sudo mkdir ~/home/(你的登录用户名)/Opencv
     解压文件,命令 tar jxvf ./OpenCV-2.1.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用起来非常方便。
4、修改OpenCV2.2源代码
     在编译之前需要打一个补丁Ticket #862: OpenCV-2.2-nov4l1.patch,否则在编译时会报错而停在80%左右处,其实只是改了两个文件中的几行代码,修改如下:
     OpenCV-2.2.0/modules/highgui/src/cap_v4l.cpp 217行处
     #include

我需要修改opencv源码,所以采用源码编译安装的方式,不用apt-get安装。

     <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
     再打开一个新的控制台,然后重启或者注销。
     编译安装完毕!^_^
6、初试OpenCV
     这里尝试编译运行opencv提供的sample/c下的例子
     根据sample中的说明,建立一个example-release文件夹来存放编译结果,命令 sudo mkdir ~/home/(你的登录用户名)/Opencv/OpenCV-2.1.0/samples/c/sample-release
     然后进入刚刚创建的文件夹,cd ~/home/(你的登录用户名)/Opencv/OpenCV-2.1.0/samples/c/sample-release
     使用cmake生成makefile文件,命令如下 cmake ~cd ~/home/(你的登录用户名)/Opencv/OpenCV-2.1.0/samples/c/example_cmake
     然后在sample-release下编译,命令:make
     OK可执行文件生成成功!
     最后看看效果,输入:./opencv_example
     o(∩∩)o...哈哈我们要得东西出来了!

  1. 首先是把Linux折腾上网,采用NAT共享上网方式。
    NAT设置,共享上网。
    vmware 虚拟机VM -> Settings里Network Adapter,选择NAT。
    记下 vmware菜单edit->virtual network editor 里VMNET8 的gateway地址(注:此地址和windows的vmnet8的ip地址不是一个地址)。
    /etc/resolv.conf 修改nameserver为网关地址。
    /etc/network/interfaces 里修改ip为VMNET8的网段,网关填网关地址。
    sudo /etc/init.d/networking restart
    就可以上网了。
    有可能需要设置的地方:windows里本地连接或无线网络连接,右键属性,高级,internet 连接共享,允许其他网络用户通过此计算机……

  2. 下载cmake Linux版本 cmake-2.8.1-Linux-i386.tar.gz
    解压缩在/home/user/cmake下,修改环境变量:
    在用户主目录下修改/home/user/.bashrc, 增加一行
    PATH:=$(PATH):/home/user/cmake/bin

  3. 编译opencv
    下载opencv-2.1.0,解压在/home/user/Opencv-2.1.0/下,

图片 1

在此目录下新建子目录build,即编译www.linuxidc.com所需临时文件所在位置。
在build目录下,运行如下命令(或建一脚本然后运行):
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON ..

.. 表示上一级目录
这时makefile已经生成了,可以看到显示默认安装目录是/usr/local
接下来:
make
sudo make install
在/etc/ld.so.conf 文件里加上一行/usr/local/lib,
运行命令 sudo ldconfig,
编译完毕。

图片 2

TAG标签:
版权声明:本文由990888藏宝阁发布于网络应用,转载请注明出处:Linux下安装OpenCV过程记录,04编译安装OpenCV2