ROS学习笔记二:Package组成

什么是package

是ROS软件的基本组织形式,catkin编译的基本单元,一个package可以包含多个可执行文件(节点)

一个package必须要有CMakeLists.txt和package.xml这两个文件
在这里插入图片描述

CMakeLists.txt

规定catkin编译的规则,告诉catkin如何编译package里面的代码,需要什么源文件、有什么依赖项、生成什么可执行目标文件

在这里插入图片描述

package.xml

定义package的属性,相当于包的自我描述,包括包名、版本号、作者、依赖等
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版权协议,转载请附上原文出处链接和本声明。