ros中warehouse-ros包使用和问题解决

环境

  • ubuntu18.04
  • ros-melodic-desktop-full
  • warehouse_ros

报错

  1. 按照教程中执行rosrun warehouse_ros mongo_wrapper_ros.py报错如下:
    [rosrun] Couldn't find executable named mongo_wrapper_ros.py below /opt/ros/melodic/share/warehouse_ros
  2. warehouse_ros包位于/opt/ros/melodic/share/warehouse_ros,可以看到包中并没有mongo_wrapper_ros.py
    mongo_wrapper_ros.py
  3. 找到了warehouse_ros的melodic版本的源码,其中源码中包含了mongo_wrapper_ros.py
    python
  4. 将mongo_wrapper_ros.py拷贝到/opt/ros/melodic/share/warehouse_ros中,并使用sudo chmod 755 mongo_wrapper_ros.py将权限改为755
  5. 重新运行rosrun warehouse_ros mongo_wrapper_ros.py,报如下错误:rosrun
  6. 使用sudo apt-get install mongodb-server命令安装一下mongodb
  7. 重新运行rosrun warehouse_ros mongo_wrapper_ros.py,报如下错误:ros中warehouse-ros包使用和问题解决_第1张图片
  8. 使用ps命令查看已经启动了一个mongodb,所以kill掉并重新运行rosrun warehouse_ros mongo_wrapper_ros.py后正常启动:ros中warehouse-ros包使用和问题解决_第2张图片
  9. melodic版本的源码下载之后就是一个ros的package,编译之后是一个动态库,可以链接到自己的程序中调用。
  10. 一台新机器上,编译报错,原因是未安装mongo c++ drivers,在melodic版本的源码的readme中,有编译方法
sudo apt-get install scons
cd mongo-cxx-driver
sudo scons --prefix=/usr/local/ --full --use-system-boost --disable-warnings-as-errors

你可能感兴趣的:(ros中warehouse-ros包使用和问题解决)