How to declare dependency on other ROS package for launch files
I'm creating a package that exclusively uses launch files from other ROS packages. In other words, I'm not creating any nodes I'm just making a package to conveniently group and launch nodes from other packages. How am I supposed to declare those other ROS packages as dependencies, if I do at all? Is it in the package.xml
using the <run_depend>
or some other tag such as <exec_depend>
?
I've checked REP 140, REP 127, the package.xml
wiki entry, and Roslaunch tips for large projects and I'm not 100% how to do it. From what I can tell, REP 140 says to use <exec_depend>
for
...packages providing shared libraries, executable commands, Python modules, launch scripts or any other files required for running your package.
which, to me, sounds like if I want to use the launch files from another package then I should declare that package as a dependency in package.xml
using <exec_depend>
.
So, again, the question is how am I supposed to declare those other ROS packages as dependencies, if I do at all?
Edit: I should have tested the <exec_depend>
tag before mentioning it because I get the following error:
The manifest (with format version 1) must not contain the following tags: exec_depend
REP-140 describes package format version 2, and specifies that you should declare your package.xml as version 2 in the opening package tag at the top, with
<package format="2">
( http://www.ros.org/reps/rep-0140.html... )That explains why I was getting that error.