ANYbotics / grid_map

Universal grid map library for mobile robotic mapping
BSD 3-Clause "New" or "Revised" License
2.62k stars 800 forks source link

[ros2] Build fails when using rosbag2 foxy-future version #319

Closed SivertHavso closed 8 months ago

SivertHavso commented 3 years ago

The foxy-devel branch of grid_map builds fine against the foxy rosbag2 binary release, however trying to build it against the foxy-future version of rosbag2 fails because of rosbag2_cpp::StorageOptions being replaced by rosbag2_storage::StorageOptions.

grid_map_ros/src/GridMapRosConverter.cpp: In static member function ‘static bool grid_map::GridMapRosConverter::saveToBag(const grid_map::GridMap&, const string&, const string&)’: grid_map_ros/src/GridMapRosConverter.cpp:670:16: error: ‘StorageOptions’ is not a member of ‘rosbag2_cpp’ 670 | rosbag2_cpp::StorageOptions storage_options;

Building grid_map_ros from the ros2 branch (which already uses the updated StorageOptions struct) doesn't work either because that version of GridMapRosConverter.cpp makes use of rosidl_generator_traits::to_yaml which isn't available in ROS2 Foxy.

Might not be worth adding support for rosbag2 foxy-future here, but I thought I'd at least point out the issue.

For some context on the rosbag2 foxy future version see: https://discourse.ros.org/t/fast-forward-merging-rosbag2-master-api-to-foxy/18927/14. The short version is that it has about a years worth of major performance improvements over the original foxy version, but the changes are API/ABI breaking.

Ryanf55 commented 8 months ago

Looks like these were part of the galactic release, and thus part of humble. Since foxy is EOL, I am closing this as won't do. https://github.com/ros2/rosbag2/compare/rolling...foxy-future#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5R5

Foxy also had serious performance issues with rosbag for anything but trivial applications. For the very small percentage of users still on foxy, please upgrade.