ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
To answer your direct questions first:
Any folder which contains one or many package.xml files somewhere below can be compiled with catkin_make
/ catkin_make_isolated
. Sourcing the setup.bash
from the ROS distro is only necessary for you to get catkin on the PATH
and PYTHONPATH
. As an alternative you could place a checkout of catkin into your workspace and invoke the commands from there directly.
Your summarized options are all fine and the choice is mostly depending on your personal preference. I for myself use vcstool to manage my repositories. It is very similar to wstool
. The two major differences are:
it provides some advanced features making it more efficient to use for me when working with many repos (e.g. vcs diff
shows the diff for multiple repos, vcs log --limit-untagged
all commits in multiple repos since they have been tagged the last time)
You would need a fork of the repository specifying the rosdep mappings (https://github.com/ros/rosdistro/tree/master/rosdep) and use that by setting the ROSDISTRO_INDEX_URL to a custom location. You would then need to keep it in sync with upstream (if you care) which might result in conflicts from time to time when you have changes on-top of it.
2 | No.2 Revision |
To answer your direct questions first:
Any folder which contains one or many package.xml files somewhere below can be compiled with catkin_make
/ catkin_make_isolated
. Sourcing the setup.bash
from the ROS distro is only necessary for you to get catkin on the PATH
and PYTHONPATH
. As an alternative you could place a checkout of catkin into your workspace and invoke the commands from there directly.
Your summarized options are all fine and the choice is mostly depending on your personal preference. I for myself use vcstool to manage my repositories. It is very similar to wstool
. The two major differences are:
vcs diff
shows the diff for multiple repos, vcs log --limit-untagged
all commits in multiple repos since they have been tagged the last time)You would need a fork of the repository specifying the rosdep mappings (https://github.com/ros/rosdistro/tree/master/rosdep) and use that by setting the ROSDISTRO_INDEX_URL to a custom location. You would then need to keep it in sync with upstream (if you care) which might result in conflicts from time to time when you have changes on-top of it.