ubuntu22.04在opencv4的基础上安装opencv3

安装opencv4

首先在ubuntu22.04上安装opencv4,可以参考之前的博客ubuntu22.04安装opencv4和opencv_contrib-CSDN博客

安装opencv3

由于有使用opencv3的需求,所以需要继续安装opencv3 ;

安装编译

这里安装的版本是opencv3.4.5,大致安装思路不变,就是要更改安装的默认路径,之前安装opencv4的时候默认安装路径是/usr/local,现在更改为/home/user/opencv3;

复制代码
cd opencv-3.4.5
mkdir build
cd build
# 注意 这里把路径改成了 /home/user/opencv3
cmake -D CMAKE_INSTALL_PREFIX=/home/user/opencv3 -D CMAKE_BUILD_TYPE="Rlease" -D OPENCV_GENERATE_PKGCONFIG=ON ..
make -j8  
sudo make install

环境配置

修改lib:

复制代码
sudo gedit /etc/ld.so.conf.d/opencv.conf
#  在文件末尾添加下面语句
/home/user/opencv3/lib
# 执行生效
sudo ldconfig

配置环境

复制代码
# 编辑~/.bashrc
vim ~/.bashrc

#添加如下内容
# opencv3.4.5
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/home/user/opencv3/lib/pkgconfig
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:./home/user/opencv3/lib

#保存退出
source ~/.bashrc

测试

复制代码
pkg-config opencv --modversion
opencv_version

opencv多版本的切换

默认调用opencv4,每次调用opencv3的时候都要修改CMakeLists.txt:

将find_package(OpenCV REQUIRED)修改为find_package(OpenCV 3.4.5),并添加/修改opencv3安装路径;

复制代码
set(OpenCV_DIR /home/user/opencv3/share/OpenCV) # 增加/修改为opencv3安装路径
  find_package(OpenCV 3.4.5)
  # find_package(OpenCV REQUIRED)
  include_directories(${OpenCV_INCLUDE_DIRS})
  target_link_libraries(${PROJECT_NAME} PRIVATE ${OpenCV_LIBS})

参考博客:

OpenCV 安装 与多版本切换 (linux)_linux opencv2和opencv4兼容-CSDN博客

相关推荐
风华同学3 小时前
免密SSH登录Ubuntu
linux·运维·ubuntu
wdfk_prog3 小时前
Wi-Fi Direct 教程 04:Interface 协议子系统初始化——WPA/EAPOL、WPS、DPP/NAN、GAS 与 P2P callback
android·运维·服务器·ubuntu·p2p·wps·wifi-direct
贵沫末13 小时前
Ubuntu——常用软件安装
linux·运维·ubuntu
阿钱真强道16 小时前
15 嵌入式操作系统 | 库的下载、编译、安装与验证(libubox / ubus / uci)
ubuntu·cmake·uci·ubus·libubox
云杂项18 小时前
tmux指南:安装、配置与高效使用(Ubuntu上)
linux·服务器·ubuntu
艸肅18 小时前
Ubuntu 安装 JDK (含手动安装)
java·ubuntu·jdk
zhangrelay1 天前
ROS2 Lyrical实验5导航Nav2
linux·笔记·学习·ubuntu·机器人
欧特克_Glodon1 天前
OpenCV计算机视觉开发入门与实践(基于C++):专栏内容介绍及目录
c++·人工智能·opencv·计算机视觉
sali-tec1 天前
C# 基于OpenCv的视觉工作流-章110-YOLO 实例分割
图像处理·人工智能·opencv·算法·yolo·计算机视觉
编码如写诗1 天前
【k8s】全新Ubuntu 26.04 使用kt 超简单安装 k8s 最新1.37.1+KubeSphere4.1.3
ubuntu·容器·kubernetes