ubuntu下多版本opencv安装及在QT下配置

    技术2026-09-02  6

    前言

    本文旨在在ubuntu18.04下安装opencv3.4.1及opencv4.3.0两个版本,进行多版本配置切换,卸载,给出简单的make构造的demo验证安装及qt下对opencv的引入示例。

    OpenCV安装

    1. OpenCV源码下载
    2. 安装命令
    cd opencv-3.4.1; mkdir -p build/installed; cd build; cmake -DCMAKE_BUILD_TYPE=RELEASE \ -DCMAKE_INSTALL_PREFIX=/home/city945/software/opencv-3.4.1/build/installed \ -DBUILD_TESTS=OFF \ -DOPENCV_GENERATE_PKGCONFIG=ON \ ..; make -j8; sudo make install;
    3. 参数解释
    -D CMAKE_INSTALL_PREFIX 指定sudo make install 的安装目录,默认在/usr/local下,如果不改,安装多个版本时,后一版本会覆盖前面版本 -D BUILD_TESTS=OFF 加快编译速度 详细了解 -> https://docs.opencv.org/4.3.0/d7/d9f/tutorial_linux_install.html -D OPENCV_GENERATE_PKGCONFIG=ON 针对opencv4,使其支持pkg-config
    4. 验证安装
    查询opencv版本 pkg-config --modversion opencv pkg-config --cflags opencv pkg-config --libs opencv # 注意对opencv4 是 pkg-config --modversion opencv4,可cd /home/city945/software/opencv4.3.0/build/installed/lib/pkgconfig/ 查看 demo 验证 demo源码
    多版本配置及切换
    .bashrc中控制 # 多版本opencv # export PKG_CONFIG_PATH="/home/city945/software/opencv-3.4.1/build/installed/lib/pkgconfig" # export LD_LIBRARY_PATH="/home/city945/software/opencv-3.4.1/build/installed/lib" export PKG_CONFIG_PATH="/home/city945/software/opencv-4.3.0/build/installed/lib/pkgconfig" export LD_LIBRARY_PATH="/home/city945/software/opencv-4.3.0/build/installed/lib" 卸载 cd build; sudo make uninstall; cd ..; rm -rf build; # 安装在/usr/local下的手动再把/usr/local/lib下的软连接删了
    QT中引入opencv
    .pro INCLUDEPATH += /home/city945/software/opencv-3.4.1/build/installed/include \ /home/city945/software/opencv-3.4.1/build/installed/include/opencv \ /home/city945/software/opencv-3.4.1/build/installed/include/opencv2 LIBS += /home/city945/software/opencv-3.4.1/build/installed/lib/libopencv*.so
    参考

    opencv-doc Ubuntu下多版本OpenCV共存和切换


    2020-07-05
    error while loading shared libraries: libopencv_core.so.3.4: cannot open shared object file: No such file or directory sudo vim /etc/ld.so.conf.d/opencv.conf # 文件中添加install/lib /home/city945/software/opencv-3.4.1/build/installed/lib sudo ldconfig
    2020-07-11
    CMake Error: The source directory “/home/ssj/opencv-4.3.0/build/OPENCV_GENERATE_PKGCONFIG=ON” does not exist. -D OPENCV_GENERATE_PKGCONFIG=ON 等参数选项中-D那里不加空格
    Processed: 0.009, SQL: 9