您的位置:首页 > 运维架构 > Shell

如何解决ROS "roscore command not found"

2016-05-06 12:05 716 查看
满怀激情的把ROS,turtlesim,都安上了,试试吧,敲个roscore启动下内核先,

root@ubuntu:/# roscore
roscore: command not found
哦?果然不行,怎么回事呢?

没关系,出点状况也是正常的,出问题不重要,怎样解决问题才是重要的。

1.首先以执行命令roscore为例,说明一下Linux 中的命令是如何实现的(对于bash等Shell也是一样的道理),其实很简单:

    Step1: 其实命令的主体是一个二进制可执行文件,首先,需要存在这个文件roscore

    Step2:要有一个命令解释器,去解释这个命令

    Step3:确保需要运行命令时,解释器(interpreter)在工作

2.逐步检查

   Check Step1:
/opt/ros/indigo/bin/
检查一下这个目录里有没有roscore

果然没有,可能是没有成功安装,因为安装的时候看到好多失败项,而且速度很慢,

-------solve 1.1 解决更新速度慢、更新失败的原因,

这里涉及到一个更新源的问题,默认情况下,Ubuntu使用的是美国的更新源,但是这个并不是很好使,经过测试,选了一个清华的更新源,本人在北京,速度非常快(对于ROS的安装,已经有各种教程了,但似乎都没有提到这个问题,导致很多Linux小白卡到了这里,所以在这里做一个补充)

可以看到,这个目录里多了好多可执行文件,我们要找的roscore也在里边。至此,问题1.1已经完美解决啦。

有点兴奋,先试试,能不能用了。

哦?这又是什么鬼?ros没能正常运行,但是至少说明roscore 这个命令可以正常调用了

重启一下吧……

貌似OK了

出现了这些东西,应该没有太大问题了吧。

哈哈,可以控制小海龟自由移动了,

,至此整个问题已经解决了,但是出于学习的心态,小白决定把剩余几个Step验证一下:

Verify

Step2:我们执行ROS相关命令所需的解释器就是setup.bash,存放在/opt/ros/indigo里边

Step3:要保证我们使用ROS相关命令时,解释器都在运行,我们可以在.bashrc文件里边”寄生“这个运行解释器的命令 source /opt/ros/indigo/setup.bash

注:本文参考了“机器人操作系统浅析”,在此对作者及ROS、Linux相关开源组织表示感谢!

---------end-----------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ubuntu bash linux ros roscore