5. ROS中的包(package)

》》点赞,收藏+关注,理财&技术不迷路《《

基本定义:

ROS本质上就是有一个又一个的package组成的,package可以说是ROS的细胞。

在catkin_make的时候它会一个一个的去找package然后生成目标文件。

一个package可以有多个节点。

5. ROS中的包(package)

判断是否为Package :

一个文件夹要被ROS认为是package的话,必须包含以下两个文件:

5. ROS中的包(package)

这两个文件必不可少:1.编译规则  2. 自我描述

Package 组成与结构:

5. ROS中的包(package)

CMakeLists.txt

规定catkin编译的规则。(例如:源文件,依赖项,目标文件)

5. ROS中的包(package)

 

CMake实践(参考书籍)

Package.xml

每一个package都必须有一个package.xml这个文件,这个文件定义了package的属性。(例如:包名,版本号,作者,一来等等),相当于一个包的自我描述。

5. ROS中的包(package)

Manifest.xml(老版rosbuild采用):

5. ROS中的包(package)

代码文件:

ROS中可执行程序一般两种来源:

脚本(shell,python)

C++(头文件,源文件)

Include——> *.h 头文件                 src——> *.cpp 源文件

5. ROS中的包(package)