grid_map icon indicating copy to clipboard operation
grid_map copied to clipboard

Fix nav2_costmap_2d linkage

Open Ryanf55 opened this issue 1 year ago • 2 comments

Purpose

  • Upstream nav2 didn't backport the dependencies
  • Many dependencies were not linked in grid_map, or relied on transitively
  • You should link the same number of dependencies you call find_package for

Ticket

Relates to https://github.com/ANYbotics/grid_map/issues/450

Instructions

  • source /opt/ros/iron/setup.bash
  • colcon build --packages-up-to grid_map_costmap_2d

Logs

Starting >>> grid_map_costmap_2d
--- stderr: grid_map_costmap_2d                             
In file included from /opt/ros/iron/include/rclcpp_lifecycle/rclcpp_lifecycle/node_interfaces/lifecycle_node_interface.hpp:20,
                 from /opt/ros/iron/include/rclcpp_lifecycle/rclcpp_lifecycle/lifecycle_node.hpp:89,
                 from /opt/ros/iron/include/nav2_costmap_2d/costmap_2d_publisher.hpp:46,
                 from /opt/ros/iron/include/nav2_costmap_2d/costmap_2d_ros.hpp:48,
                 from /home/ryan/Dev/ros2_ws/src/grid_map/grid_map_costmap_2d/test/test_costmap_2d_ros.hpp:23,
                 from /home/ryan/Dev/ros2_ws/src/grid_map/grid_map_costmap_2d/test/test_costmap_2d_ros.cpp:17:
/opt/ros/iron/include/rclcpp_lifecycle/rclcpp_lifecycle/state.hpp:21:10: fatal error: rcl_lifecycle/data_types.h: No such file or directory
   21 | #include "rcl_lifecycle/data_types.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
gmake[2]: *** [test/CMakeFiles/costmap-2d-ros-test.dir/build.make:76: test/CMakeFiles/costmap-2d-ros-test.dir/test_costmap_2d_ros.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:230: test/CMakeFiles/costmap-2d-ros-test.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....
In file included from /opt/ros/iron/include/rclcpp_lifecycle/rclcpp_lifecycle/node_interfaces/lifecycle_node_interface.hpp:20,
                 from /opt/ros/iron/include/rclcpp_lifecycle/rclcpp_lifecycle/lifecycle_node.hpp:89,
                 from /opt/ros/iron/include/nav2_costmap_2d/costmap_2d_publisher.hpp:46,
                 from /opt/ros/iron/include/nav2_costmap_2d/costmap_2d_ros.hpp:48,
                 from /home/ryan/Dev/ros2_ws/src/grid_map/grid_map_costmap_2d/include/grid_map_costmap_2d/costmap_2d_converter.hpp:22,
                 from /home/ryan/Dev/ros2_ws/src/grid_map/grid_map_costmap_2d/include/grid_map_costmap_2d/grid_map_costmap_2d.hpp:13,
                 from /home/ryan/Dev/ros2_ws/src/grid_map/grid_map_costmap_2d/test/test_costmap_2d_converter.cpp:18:
/opt/ros/iron/include/rclcpp_lifecycle/rclcpp_lifecycle/state.hpp:21:10: fatal error: rcl_lifecycle/data_types.h: No such file or directory
   21 | #include "rcl_lifecycle/data_types.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
gmake[2]: *** [test/CMakeFiles/grid_map_costmap_2d-test.dir/build.make:90: test/CMakeFiles/grid_map_costmap_2d-test.dir/test_costmap_2d_converter.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:202: test/CMakeFiles/grid_map_costmap_2d-test.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2
---
Failed   <<< grid_map_costmap_2d [0.36s, exited with code 2]

Ryanf55 avatar Mar 11 '24 04:03 Ryanf55

@wep21 I am unable to get iron to build. If you have any tips, let me know!

Ryanf55 avatar Mar 11 '24 04:03 Ryanf55

After some time, the changes in NAV2 are available in binaries. This builds now.

Ryanf55 avatar Jul 28 '24 17:07 Ryanf55