gazebosim / ros_gz

Integration between ROS (1 and 2) and Gazebo simulation
https://gazebosim.org
Apache License 2.0
211 stars 125 forks source link

Use gz_vendor packages #531

Closed azeey closed 2 months ago

azeey commented 2 months ago

🎉 New feature

Summary

Changes Gazebo dependencies to use vendor packages (see https://github.com/gazebo-tooling/release-tools/issues/1117)

Test it

Build and run tests.

Checklist

Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by messages.

azeey commented 2 months ago

are packages released and sync?

ERROR: the following rosdeps failed to install
  apt: command [apt-get install -y ros-rolling-sdformat-urdf] failed
  apt: command [apt-get install -y ros-rolling-gz-transport-vendor] failed
  apt: Failed to detect successful installation of [ros-rolling-sdformat-urdf]
  apt: Failed to detect successful installation of [ros-rolling-gz-transport-vendor]

Not quite yet. sdformat_urdf is waiting for https://github.com/ros/sdformat_urdf/pull/28 to be merged and released. gz-transport-vendor is released, but it's failing to build on Noble due to an issue in Noble itself (can't install python3-distutils).

luca-della-vedova commented 2 months ago

I'm trying this PR with the vendored gz binaries in noble, was stuck at yaml-cpp yesterday but saw that is already fixed (thanks!), it seems now ros_gz_image is failing:

lucadv@noble:~/noble_ws$ colcon build --packages-select ros_gz_image
Starting >>> ros_gz_image
--- stderr: ros_gz_image                         
CMake Error at /opt/ros/rolling/opt/gz_transport_vendor/extra_cmake/lib/cmake/gz-transport/gz-transport-config.cmake:24 (add_library):
  add_library cannot create imported target "gz-transport" because another
  target with the same name already exists.
Call Stack (most recent call first):
  CMakeLists.txt:20 (find_package)

CMake Error at /opt/ros/rolling/opt/gz_msgs_vendor/extra_cmake/lib/cmake/gz-msgs/gz-msgs-config.cmake:24 (add_library):
  add_library cannot create imported target "gz-msgs" because another target
  with the same name already exists.
Call Stack (most recent call first):
  CMakeLists.txt:23 (find_package)
azeey commented 2 months ago

@ahcorde this is ready to review. CI is green 🎉