centos7安装opencv3.2.0

网上的教程大都是基于centos6或者6.5的,找不到一篇完整的可用的centos7教程,安装过程中,踩了很多坑,整理记录如下


参考文章:

http://blog.csdn.net/daunxx/article/details/50506625

http://blog.csdn.net/xuejiren/article/details/24347555

http://www.cnblogs.com/xixixing/p/6096057.html


基本准备:

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

sudo yum update

sudo yum install autoconf automake cmake freetype-devel gcc gcc-c++ git libtool make mercurial nasm pkgconfig zlib-devel


安装cmake-gui

sudo yum install cmake-gui


为了支持gui特征

sudo yum install gtk2-devel


为了支持摄像头

sudo yum install libv4l-devel


为了支持流媒体

sudo yum install gstreamer-plugins-base-devel


下载opencv

https://sourceforge.net/projects/opencvlibrary/files/opencv-unix/3.2.0/opencv-3.2.0.zip/download


unzip opencv-3.2.0.zip

cd opencv-3.2.0

mkdir build

cd build


Cmake一次

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


此时会发现Cmake停在了下面这个位置,直接用Ctrl+C停掉当前的Cmake

-- checking for module 'libgphoto2'

--   package 'libgphoto2' not found

-- ICV: Downloading ippicv_linux_20151201.tgz...


进入下面这个文件夹,会发现ippicv_linux_20151201.tgz文件

opencv-3.2.0/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e

rm ippicv_linux_20151201.tgz,删除这个文件。 

自行下载这个文件 https://raw.githubusercontent.com/Itseez/opencv_3rdparty/81a676001ca8075ada498583e4166079e5744668/ippicv/ippicv_linux_20151201.tgz

然后用cp命令将上面ipp_icv下载中下载的文件放在这个文件夹下。


重新使用上面的命令Cmake一次。

然后

make

sudo make install

vim /etc/ld.so.conf 


将以下内容添加到最后:

/usr/local/lib

然后wq保存关闭

然后

ldconfig

vim /etc/bash.bashrc


在文件后添加下面内容,这个文件不存在的话会创建一个:

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

export PKG_CONFIG_PATH


然后wq保存关闭

重启终端

新建一个测试代码

//
//  helloOpenCV.cpp
//  OpencvTest
//
//  Created by songlu on 2017/4/13.
//  Copyright © 2017年 songlu. All rights reserved.
//

#include "opencv.hpp"

int main()
{
    cv::Mat img(100,200,CV_8UC3);
    img.setTo(cv::Scalar(255,255,255));
    cv::putText(img,"Hello OpenCV!", cv::Point(10,60), 5, 1.0, cv::Scalar(255,255,0));
    cv::imshow("Image", img);
    cv::waitKey(0);
    cv::destroyAllWindows();
    return 0;
}


执行下面命令,注意不是单引号,是~那个键的符号

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

./helloOpenCV


centos7安装opencv3.2.0_第1张图片


大功告成


需要注意的问题:

我是用macOS通过VMware fusion装的centos,拖文件进去文件传不完整,需要用虚拟机自行下载

除最后一条命令外,宿主机ssh执行上述命令均可,因为要显示窗口,还是要到虚拟机上执行

你可能感兴趣的:(C++,OpenCV,Linux)