有多个warning出现。。。版本冲突

解决办法:

cv_bridge[opencv和ros连接起来的桥],默认依赖的opencv版本是2.4.8,如果安装了新的opencv版本,比如3.1.0,那么在编译cv_bridge时候会提示无法找到opencv 2.4.8.so的库。

1.必须要先把旧版本的cv_bridge卸载掉:

sudo apt-get remove ros-indigo-cv-bridge

2.然后下载新版本的cv_bridge:

git clone https://github.com/ros-perception/vision_opencv.git

3.修改cv_bridge中的cmakelists.txt

find_package(OpenCV 3.1 REQUIRED)  //将opencv的版本指定为3.1

4.将里面的cv_bridge包拿出来,放到工作空间中,重新编译:

catkin_make --pkg cv_bridge  //catkin_make --pkg[package包],单独编译工作空间catkin_ws中的包;catkin_make编译所有的

也可以通过cmake编译

cd ~/catkin_ws/src/cv_bridge
mkdir build
cd build
cmake ..
make
sudo make install

结束之后你就可以更改你的其他代码了,由于以前的cv_bridge不见了,所以要在其他代码的cmakelists.txt添加一句话,后面的路径是自己的路径,查找cv_bridge.config.cmake所在的路径即可

set(cv_bridge_DIR /usr/local/share/cv_bridge/cmake)  //在find_package前面
5.python调用cv_bridge相关的工作
在~/.bashrc中添加
export LD_LIBRARY_PATH=/usr/local/lib/

 

posted on 2017-06-07 22:04  Jessica&jie  阅读(6024)  评论(0编辑  收藏  举报