Robotics StackExchange | Archived questions

Why install rolling sources for rosdep when using humble for ros_gz?

Environment

Description

Steps to reproduce

  1. Clone ros_gz
  2. Checkout the humble branch
  3. Run the supplied rosdep command rosdep install -y -r -q --from-paths src --ignore-src --rosdistro rolling

Output

Rosdep specifies the following behavior for rosdistro. --rosdistro=ROS_DISTRO Explicitly sets the ROS distro to use, overriding the normal method of detecting the ROS distro using the ROS_DISTRO environment variable. When used with the 'update' verb, only the specified distro will be updated.

Is this intentional to install rolling sources even when using humble? If not, my recommendation would be this:

  1. Clone ros_gz
  2. Checkout your branch of choicde
  3. NEW - Source your ROS installation, whichever you choose. source /opt/ros/<ros_distro>/setup.bash
  4. Then, run rosdep without the rosdistro flag. Since the ROS WS was sourced before calling rosdep, it will use the appropriate distro for you automatically.

Even with the following, and after installing gazebo garden, I get the following errors on install.

rosdep install -y -r -q --from-paths src --ignore-src ERROR: the following packages/stacks could not have their rosdep keys resolved to system dependencies: ros_gz_image: Cannot locate rosdep definition for [gz-transport12] ros_gz_bridge: Cannot locate rosdep definition for [gz-transport12] ros_gz_sim_demos: Cannot locate rosdep definition for [gz-sim7] ros_gz_sim: Cannot locate rosdep definition for [gz-math7] Continuing to install resolvable dependencies... All required rosdeps installed successfully

Asked by ryanf55 on 2023-01-31 17:34:52 UTC

Comments

Answers

I think all references to rolling in the humble branch should be changed to humble. It was probably not updated after branching from rolling to humble. PRs would be appreciated.

Regarding the rosdep keys, gz-transport12 is not available form packages.ros.org or from upstream Ubuntu repositories, so we can't add rosdep keys for it per https://github.com/ros/rosdistro/blob/master/CONTRIBUTING.md#expected-rosdep-sources. You'll have to add the packages.osrfoundation.org apt repo and install gz-transport12 and any other Gazebo dependencies from there. Per the instruction in https://github.com/gazebosim/ros_gz/tree/humble#compile-ros_gz, the easiest thing would be to install gz-garden which will bring all the dependencies.

Asked by azeey on 2023-02-03 14:24:17 UTC

Comments