centos 6安装opencv

昨天装好的,今天有些细节已经记不起来里,大致写一下吧。

首先,从opencv官网下载linux的opencv-2.4.9安装包,下载地址:http://jaist.dl.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.9/opencv-2.4.9.zip

然后,由于下载的是一个zip压缩包,所以要装一个rar解压软件,下载地址:http://www.rarsoft.com/rar/rarlinux-x64-5.1.1.tar.gz

rar安装命令:

#tar -xzvf rarlinux-x64-5.1.1.tar.gz
#cd rar//解压出来的文件夹名称是rar,可用ls查看
#make
#make install

然后,直接

#rar x opencv-2.4.9.zip
#cd opencv-2.4.9
#cmake CMakeLists.txt //注意Cmake要用新版本的,不然会编译不过
#make
#make install

注意:这里我之前系统的Cmake版本为2.3的,编译不通过一直报错:

cc1plus: 警告:命令行选项“-Wmissing-prototypes”对 Ada/C/ObjC 是有效的,但对 C++ 无效 
cc1plus: 警告:命令行选项“-Wstrict-prototypes”对 Ada/C/ObjC 是有效的,但对 C++ 无效

经过一番查找终于发现,是Cmake版本过低,然后下载安装的Cmake3.0.2下载地址:http://www.cmake.org/files/v3.0/cmake-3.0.2.tar.gz

安装Cmake3.0.2要求要用Cmake2.6以上版本才能编译,我现在的版本居然依然是无法安装,正郁闷的时候发现了一根救命稻草:

Cmake文件夹里边有一个bootstrap 文件,直接

#./bootstrap
#make
#make install

即可完成安装。

测试程序:

源程序 DisplayImage.cpp

#include <stdio.h>
#include <opencv2/opencv.hpp>

using namespace cv;

int main(int argc, char** argv )
{
    if ( argc != 2 )
    {
        printf("usage: DisplayImage.out <Image_Path>\n");
        return -1;
    }

    Mat image;
    image = imread( argv[1], 1 );

    if ( !image.data )
    {
        printf("No image data \n");
        return -1;
    }
    namedWindow("Display Image", CV_WINDOW_AUTOSIZE );
    imshow("Display Image", image);

    waitKey(0);

    return 0;
}

Cmake文件 CMakeLists.txt

cmake_minimum_required(VERSION 2.8)
project( DisplayImage )
find_package( OpenCV REQUIRED )
add_executable( DisplayImage DisplayImage.cpp )
target_link_libraries( DisplayImage ${OpenCV_LIBS} )

然后编译文件:

#cd <DisplayImage_directory>
#cmake .
#make

执行结果:

#./DisplayImage lena.jpg

posted @ 2014-09-25 17:16  Fienly  阅读(3364)  评论(1编辑  收藏  举报