ros-humble icon indicating copy to clipboard operation
ros-humble copied to clipboard

`ros-humble-ament-cmake 1.3.2` not compatible with `cmake > 3.24`

Open danzimmerman opened this issue 3 years ago • 1 comments

Issue

Fresh installs on Linux are pulling in cmake 3.24.1 from conda-forge which seems to be triggering the issue described in

https://github.com/ament/ament_cmake/issues/396

and fixed in

https://github.com/ament/ament_cmake/pull/395

Symptom

Building certain packages can result in workspace build failures with errors like

--- stderr: ur_controllers
CMake Error at /home/<user>/ros/humble_ws/install/share/ur_dashboard_msgs/cmake/ament_cmake_export_targets-extras.cmake:18 (message):
  Failed to find exported target names in
  '/home/<user>/ros/humble_ws/install/share/ur_dashboard_msgs/cmake/export_ur_dashboard_msgs__rosidl_generator_cExport.cmake'
Call Stack (most recent call first):
  /home/<user>/ros/humble_ws/install/share/ur_dashboard_msgs/cmake/ur_dashboard_msgsConfig.cmake:41 (include)
  CMakeLists.txt:19 (find_package)


---

Possible Resolutions

Seems like there's a 1.5.0 release, but it's still too old to pull this in and it would still need a patch.

I think it's possible that this is enough:

https://patch-diff.githubusercontent.com/raw/ament/ament_cmake/pull/395.patch

I still don't quite grok how to properly make my own PR for patching packages but if I make enough progress on the tasks I'm unblocking re: this issue I will look into it again.

Downgrading to cmake 3.23.3 is a workaround.

danzimmerman avatar Sep 01 '22 20:09 danzimmerman

We already have the patch in place: https://github.com/RoboStack/ros-humble/blob/main/patch/ros-humble-ament-cmake-export-targets.patch

But it seems like we need to actually re-build ament-cmake-export-targets.

Tobias-Fischer avatar Sep 01 '22 20:09 Tobias-Fischer

Fixed with the new builds :).

Tobias-Fischer avatar Dec 11 '22 23:12 Tobias-Fischer