Building Common MoveIt Dependencies from Source in Catkin

由于在运行moveit启动时,中间总是有一个错误,大致错误意思就是未能启动一个叫做MongoDBwarehouse_ros.py这个节点,虽然说不影响使用,但还是想解决它,后面去github上搜,发现这个问题的确存在:https://github.com/ros-planning/moveit/issues/611
python code is removed from warehouse_ros, but still exists in setup assistant
意思就是在moveit功能包中, warehouse_ros这个节点的python文件已经删除,而配置的启动文件却仍存在
后面去moveit的官网搜索,官网给出了依赖安装,链接:这里
但官网安装说的不清楚,在这里补充下。
第一步:安装mongo c++driver
记住,这一步千万不要安装那个mongo c++driver的官网上去安装,相当麻烦,就把官网的给出的github包下载下来就好。

git clone -b 26compat https://github.com/mongodb/mongo-cxx-driver.git
sudo apt-get install scons
cd mongo-cxx-driver
sudo scons --prefix=/usr/local/ --full --use-system-boost --disable-warnings-as-errors
sudo scons install

这里会报错:
error:you must use --use-system-boost when you building the C ++ driver
把命令改一下:
sudo scons install --use-system-boost
,然后还会报错:
没有规则创建目标install
再加个文件夹install,就可以安装通过了

cd ~/your_workspace/src
wstool set -yu warehouse_ros_mongo --git https://github.com/ros-planning/warehouse_ros_mongo.git -v jade-devel
wstool set -yu warehouse_ros --git https://github.com/ros-planning/warehouse_ros.git -v jade-devel

然后到工作空间下catkin_make一下就好了。
虽然后面就可以成功运行warehouse_ros.py了,但后面在moveit启动还是会报错,说没有那样的文件,那没事,因为mongoDB其实是用来存储和读取数据的,你每次启动的时候,都会去读取一遍数据,你都没存,它肯定读取不了啊,当然你想存,它是在baxter_moveit_config文件夹中,会自动生成一个文件夹default_warehouse_mongo_db,就是存这里,至于存什么数据,我也不知道,知道的还望大神指点。谢谢!!
由于后面发现没用,就干脆将启动moveit文件中启动这个mongodb的代码给删除了:
为了禁止机器人启动warehouse mongodb 在baxter_moveit_config/launch/baxter_gripper.launch文件中的上一行删除了:

<include file="$(find baxter_moveit_config)/launch/default_warehouse_db.launch" />
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值