catkin
package是catkin编译的最基本的单元,catkin编译的时候会递归查找src目录下的每一个package。
package
package是ROS软件的基本组织形式,一个package可以包含多个可执行文件(节点)。
一个package中至少含有一个CMakeLists.txt和一个package.xml。
CMakeLists.txt
规定catkin编译的规则
package.xml
定义package的属性(包的自我描述)
常用指令
rospack 查找某个pkg的地址
r
o
s
p
a
c
k
f
i
n
d
p
a
c
k
a
g
e
n
a
m
e
;
列
出
本
地
所
有
p
k
g
rospack find package_name;列出本地所有pkg
r o s p a c k f i n d p a c k a g e n a m e ; 列 出 本 地 所 有 p k g rospack list rocscd 跳转到某个pkg路径下$roscd package_name rosls 列举某个pkg下的文件信息$rosls package_name rosed 编辑pkg中的文件 $rosed package_name file_name catkin_create_pkg 创建一个pkg $catkin_create_pkg<pkg_name>[deps] rosdep 安装某个pkg所需的依赖 $rosdep install [pkg_name]
Metapacakge
是一种虚包,自身没有内容,依赖其他软件包。作用是把具有相似功能的工具包组织起来。
自定义通信格式
消息(msg)
服务(srv)
动作(action)
launch以及配置文件
launch文件(launch)
配置文件(yaml)