ROS2的cv_bridge和opencv版本不匹配问题

文章讲述了在ROSFoxy环境中,由于默认OpenCV版本(4.2)与本地安装的4.5版本不兼容,导致cv_bridge库警告。解决方案是单独重新安装cv_bridge,修改CMakeLists.txt中OpenCV版本,并指定编译和安装路径。
摘要由CSDN通过智能技术生成

1. 问题

/usr/bin/ld: warning: libopencv_imgcodecs.so.4.2, needed by /opt/ros/foxy/lib/libcv_bridge.so, may conflict with libopencv_imgcodecs.so.4.5

/usr/bin/ld: warning: libopencv_core.so.4.2, needed by /opt/ros/foxy/lib/libcv_bridge.so, may conflict with libopencv_core.so.4.5

2. 原因

   ros安装的时候默认的opencv版本是4.2,和本地安装的opencv版本不匹配(我的本地安装的是4.5)

3. 解决方案

    单独重新安装cv_bridge库

//下载对应版本的cv_bridge包(我安装的foxy)

$ git clone https://github.com/ros-perception/vision_opencv.git -b foxy
//进入cv_bridge目录,

//修改CMakeLists.txt文件的opencv版本号,

//改成自己本地安装的版本


find_package(OpenCV 4 QUIET // 改成find_package(OpenCV 4.5 QUIET

COMPONENTS

opencv_core

opencv_imgproc

opencv_imgcodecs

CONFIG

)

//编译的时候指定安装路径(ros2安装的目录下,我的ros2安装目录:/opt/ros/foxy)

$ cd vision_opencv/cv_bridge

$ mkdir build && cd build

$ cmake -DCMAKE_INSTALL_PREFIX=/opt/ros/foxy ..

$ sudo make install

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值