[rosdep] Incorrect dependency install order using manifests [closed]
We recently switched some of our ROS development from a bunch of custom dependency install (bash) scripts to rosdep. Some of them we created proper .rdmanifest files for, including the depends
tag.
However, the installation order doesn't work as expected. At the bottom is an example output, from adding an echo statement to each check presence script. We can see a couple of things from this:
- The check presence scripts are executed twice, for some reason
- The first time, the order is correct (e.g.
rcw_statistics_database
depends onlamp
) - the second time it's wrong - When installation begins, it uses the wrong order (the second one)
What could be the cause of this? Let me know if you need more info.
$ rosdep install -y -i --from-paths /home/builder/RCW_workspaces/rcw_ci_ws/src
check-presence-script: ros_patches
check-presence-script: lamp
check-presence-script: mysql-connector
check-presence-script: rcw_database
check-presence-script: robwork
check-presence-script: rcw_statistics_database
check-presence-script: smile
(here it is installing one dependency through apt, that has nothing to do with this)
check-presence-script: mysql-connector
check-presence-script: smile
check-presence-script: rcw_statistics_database
check-presence-script: lamp
check-presence-script: rcw_database
check-presence-script: robwork
executing command [rosdep-source install http://some_url/mysql_connector.rdmanifest]
executing command [rosdep-source install http://some_url/smile.rdmanifest]
executing command [rosdep-source install http://some_url/rcw_statistics_database.rdmanifest]
(installation fails due to missing dependencies)