![精通ROS机器人编程(原书第3版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/21/51444021/b_51444021.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.2.2 ROS元功能包
元包是一种特殊的包,只需要一个文件,即package.xml。
元包只是将多个包组合为一个逻辑包。在元包的package.xml文件中包含一个导出标记,如下所示:
![](https://epubservercos.yuewen.com/0D546D/30334936404123306/epubprivate/OEBPS/Images/23_02.jpg?sign=1739343892-j6zYYAgNoVotKFwWA6sXAT6PBWnUD6Ju-0-f799de271969601cff7496400916fb1c)
此外,在元包中,catkin没有<buildtool_depend>依赖项,只有<run_depend>依赖项,它们就是在元包中被组合到一起的那些包。
ROS导航栈是包含元包的地方的一个良好示例。如果安装了ROS及导航包,我们可以尝试使用以下命令来切换到navigation元包文件夹:
![](https://epubservercos.yuewen.com/0D546D/30334936404123306/epubprivate/OEBPS/Images/24_01.jpg?sign=1739343892-yhSbtn3Ji6Z5cNk1Sq2sCGZqjUTE16Gd-0-04d122a7827e74768814e6703b40aa35)
使用喜欢的文本编辑器(在下面的例子中是gedit)打开package.xml文件:
![](https://epubservercos.yuewen.com/0D546D/30334936404123306/epubprivate/OEBPS/Images/24_02.jpg?sign=1739343892-wHZoMJOf00aCUL9oM38BIWVWJfXvZLag-0-05acdd0e67d20668ba39b11f11ec57e7)
这是一个冗长的文件,图1.5所示是它的精简版本。
![](https://epubservercos.yuewen.com/0D546D/30334936404123306/epubprivate/OEBPS/Images/24_03.jpg?sign=1739343892-caBL7ZU5uzsPQmFXmmoRPlJgZvgbNE7u-0-9fd4ceb359ef8f71c216224fbafaa5f3)
图1.5 package.xml元包的结构
此文件包含有关包的几条信息,例如简要说明、依赖项和包版本。