ROS入门2: ROS文件系统介绍
声明: 所有的ROS教程均来自ROSwiki 的Tutorials.
1 预备工作
在这一节, 我们需要使用ros-tutorials
程序包, 请下安装:
dennis@dennis-laptop:~$ sudo apt-get install ros-indigo-ros-tutorials
- 软件包(Packages): 是ROS应用程序代码的组织单元, 每个软件包都可以包含程序库, 可执行文件,脚本或者其他手动创建的东西.
- 清单(Manifest): 是对软件包相关信息的描述, 用于定义软件包相关元信息之间的依赖关系, 这些信息包括版本,维护者和许可协议等.
2 文件系统工具
有专门针对ROS软件包的命令行工具.例如:rosfind
, roscd
,rosls
rosfind
# rospack find [ROS软件包名称]
dennis@dennis-laptop:~$ rospack find roscpp
/opt/ros/indigo/share/roscpp
roscd
roscd [本地软件包名称[/子目录]]
dennis@dennis-laptop:~$ roscd roscpp
dennis@dennis-laptop:/opt/ros/indigo/share/roscpp$
你会发现, 已经切换到roscpp
软件包的目录下了.
注意:
ROS中的工具, 只能操作那些已经包含在ROS_PACKAGE_PATH
环境变量中的软件包, 要查看ROS_PACKAGE_PATH
中的软件包可以输入:
dennis@dennis-laptop:~$ echo $ROS_PACKAGE_PATH /home/dennis/catkin_ws/src:/opt/ros/indigo/share:/opt/ros/indigo/stacks
- 分号表示多条路径分隔.
- 在ROS入门1里面讲过如果添加
ROS_PACHAKE_PATH
.- 请特别注意这个
ROS_PACKAGE_PATH
, 许多软件包要求在此目录下编译, 比如从github上下载的包. 如果你创建的目录没在ROS_PACKAGE_PATH
下, 则无法运行.