ubuntu下OpenCV安装

参考视频与博客: 

Ubuntu 安装 OpenCV 4.5.5_哔哩哔哩_bilibili

(158条消息) ubuntu OpenCV C++安装_c++ opencv安装 ubuntu_Shuai@的博客-CSDN博客

 一、安装与配置opencv

  1.  
    1.使用git 下载opencv
    #下载源码的语句
    git clone https://github.com/opencv/opencv.git
    2.解压
    3.进入opencv 文件建立build目录
    cd opencv
    mkdir build
    cd build
    4.编译
    cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_GENERATE_PKGCONFIG=ON ..
    
    make -j8
    
    sudo make install
    
    二、 配置Opencv
    
    1.动态库配置
    sudo gedit /etc/ld.so.conf.d/opencv.conf
    在/etc/ld.so.conf.d的目录下可以看到opencv.conf的文件
    
    #在opencv.conf中添加内容:
    /usr/local/lib
    
    然后执行生效命令
    sudo ldconfig
    
    修改/etc/bash.bashrc
    sudo gedit /etc/bash.bashrc 
    
    在bash.bashrc的文件末尾添加
    PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig 
    export PKG_CONFIG_PATH
    接下来就执行更新命令
    source /etc/bash.bashrc  
    
    sudo updatedb(如果报错先安装 sudo apt install mlocate在执行)
    
    

    ubuntu下OpenCV安装_第1张图片

     这一步是找到opencv.pc在/usr/local/lib/pkgconfig目录下

  2. ubuntu下OpenCV安装_第2张图片

    动态库配置是为了: 通常情况下, 编译器会自动去查找动态库,通常的查找方式是通过访问/etc/ld.so.cache这个文件来完成的,而这个ld.so.cache文件是在每次系统启动的时候动态生成的,如果要添加自己的动态库,可以在/etc/ld.so.conf.d下,建立自己的配置文件就可以了。

    本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。库有两种:静态库(.a、.lib)和动态库(.so、.dll)。

    所谓静态、动态是指链接。

  3. pkg-config用法详解

当开发过程中使用第三方库时,我们需要知道被使用的第三方库,它包含的头文件在哪儿、它依赖哪些库、它的编译选项有哪些、它的链接选项有哪些等等,也就是说需要知道这些信息我们才能正确的编译和链接它。当然可以通过直接在编译选项中指定的方式来使用,但是,对于一些大型或者比较复杂的第三方库,包含的头文件或者依赖库非常多、非常复杂的时候,这样做的成本就非常高,而且非常不便于在不同平台之间的移植。
  pkg-config就是解决这个问题的一种方案。 

二、pkg-config是什么

pkg-config通过读取一个名为.pc的文件来获取包的信息,一般会从/usr/lib/pkgconfig, /usr/share/pkgconfig, /usr/local/lib/pkgconfig, /usr/local/share/pkgconfig来查找.pc文件,除此之外,也会查找PKG_CONFIG_PATH环境变量指定的路径。

  • --cflags:获取编译包的所需要的预处理或者编译选项,例如-I/usr/include,指定编译包的头文件搜索路径。

  • --libs:获取编译包所需要的链接选项,例如-L/usr/lib指定库文件搜索路径,或-lXXX指定具体的库文件。

pkg-config用法详解 - 简书 (jianshu.com) 

你可能感兴趣的:(ubuntu,linux,运维)