centos7安装opencv3.2.0

    xiaoxiao2021-04-11  28

    网上的教程大都是基于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

    大功告成

    需要注意的问题:

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

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

    转载请注明原文地址: https://ju.6miu.com/read-666547.html

    最新回复(0)