什么是package
是ROS软件的基本组织形式,catkin编译的基本单元,一个package可以包含多个可执行文件(节点)
一个package必须要有CMakeLists.txt和package.xml这两个文件
CMakeLists.txt
规定catkin编译的规则,告诉catkin如何编译package里面的代码,需要什么源文件、有什么依赖项、生成什么可执行目标文件

package.xml
定义package的属性,相当于包的自我描述,包括包名、版本号、作者、依赖等
写package.xml的时候一般只需要修改build_depend和run_depend
代码文件
代码文件有两种来源:脚本(shell、python)和c++(头文件、源文件)
通常在package目录下建一个scripts路径,用来放可执行脚本,include用来放c++头文件,src用来放源文件
自定义通信格式
package中还可以放自定义通信格式,包括消息(msg)、服务(srv)、动作(action)

launch以及配置文件
package中还可以放launch以及配置文件

launch文件(launch):实现一次启动多个节点
配置文件(yaml)
总结:

常用指令:

1、rospack
查找某个pkg的地址
rospack find package_name
列出本地所有pkg
rospack list
2、roscd
跳转到某个pkg路径下
roscd package_name
3、rosls
列举某个pkg下的文件信息
rosls package_name
4、rosed
编辑pkg中的文件
rosed package_name file_name
5、catkin_create_pkg
创建一个pkg
catkin_create_pkg <pkg_name> [deps]
6、rosdep
安装某个pkg所需的依赖
rosdep install [pkg_name]
版权声明:本文为qq_36498362原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。