每次提到功能包时,指的是一种特定的文件结构和文件夹组合。这种结构如下所示:
1)bin/ 这是我们编译和链接程序后,用于存储可执行文件的文件夹。
2)include/package_name/ 这个目录包含了我们所需要的库的头文件。
3)msg/ 如果我们需要开发非标准信息,需要把文件放在这里。
4)scripts/ 其中包括Bash,Python或任何其他脚本的可执行脚本文件。
5)src/ 这是存储程序源文件的地方。
6)srv/ 这是存储服务类型的文件。
7)CMakeLists.txt 这是CMake的生成文件
8)manifest.xml 这是功能包清单文件。
为了创建,修改或使用功能包,ROS给我们提供了一些工具:
1)rospack 使用此命令来获取信息或在系统中查找功能包,如rospack find XXX
2)roscreate-pkg 使用该命令来创建一个新的功能包
3)rosmake 使用此命令来编译功能包
4)rosdep 使用此命令来安装功能包的系统依赖项
5)rxdeps 使用此命令来查看功能包的依赖关系
如果想要在文件夹和功能包之间移动文件,ROS提供非常有用的rosbash功能包,其中包含了一些类似于LINUX中的命令
1)roscd 此命令用来更改目录
2)rosed 此命令用来编辑文件
3)roscp 此命令用于从一些功能包复制文件
4)rosd 此命令列出功能包的目录
5)rosls 此命令列出功能包下的文件。