Why install rolling sources for rosdep when using humble for ros_gz?
Environment
- OS Version: Ubuntu 22.04 Jammy Source, humble commit 74dcf50afc0c487e0d6ef5da8c412ddb14762b30
- Gazebo version - garden, installed with binaries as recommended
Description
- When installing rosdep sources, I would expect to install sources for the distro I am using.
Steps to reproduce
- Clone ros_gz
- Checkout the humble branch
- 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:
- Clone ros_gz
- Checkout your branch of choicde
- NEW - Source your ROS installation, whichever you choose.
source /opt/ros/<ros_distro>/setup.bash
- 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
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