Open mic-pest opened 2 years ago
Hi @mic-pest
Marathon2 Was an experiment carried out more than two years ago. It was developed for Foxy, and some changes in rclcpp have been done since then. What distro are you using?
I can help you update marathon2 by reviewing PRs if you want to work on it.
Best Francisco
Hi, we managed to switch to Foxy but the indicated ros1_bridge version provided in the readme (https://github.com/fmrico/ros1_bridge/tree/dedicated_bridges) build seems not working. The error reported is the following:
/usr/bin/ld: libros1_bridge.so: undefined reference to 'ros1_bridge::get_service_factory_slam_toolbox__srv__MergeMaps(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/bin/ld: libros1_bridge.so: undefined reference to 'ros1_bridge::get_service_factory_slam_toolbox__srv__Pause(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/bin/ld: libros1_bridge.so: undefined reference to 'ros1_bridge::get_service_factory_slam_toolbox__srv__Clear(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/bin/ld: libros1_bridge.so: undefined reference to 'ros1_bridge::get_service_factory_slam_toolbox__srv__DeserializePoseGraph(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/bin/ld: libros1_bridge.so: undefined reference to 'ros1_bridge::get_service_factory_slam_toolbox__srv__ClearQueue(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/bin/ld: libros1_bridge.so: undefined reference to 'ros1_bridge::get_service_factory_slam_toolbox__srv__AddSubmap(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/bin/ld: libros1_bridge.so: undefined reference to 'ros1_bridge::get_service_factory_slam_toolbox__srv__LoopClosure(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/bin/ld: libros1_bridge.so: undefined reference to 'ros1_bridge::get_service_factory_slam_toolbox__srv__SerializePoseGraph(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/bin/ld: libros1_bridge.so: undefined reference to 'ros1_bridge::get_service_factory_slam_toolbox__srv__SaveMap(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/bin/ld: libros1_bridge.so: undefined reference to 'ros1_bridge::get_service_factory_slam_toolbox__srv__ToggleInteractive(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
I'm trying to replicate the marathon experiment. After having cloned this repository, when building the ros2 workspace, the following error occurs in the marathon_ros2_wp_manager package. It seems to be an error related to nav2 data types. All dependencies (pcl_msgs, perception_pcl, teb_local_planner, costmap_converter, nav2, stvl plugin) are installed.
stderr: marathon_ros2_wp_manager::SharedPtr, std::shared_ptr<const nav2_msgs::action::NavigateToPoseFeedback<std::allocator > >)’:
/home/mic/ros2_eloquent/src/marathon_ros2/marathon_ros2_wp_manager/src/wp_manager.cpp:129:37: error: ‘using element_type = const struct nav2_msgs::action::NavigateToPoseFeedback<std::allocator > {aka const struct nav2_msgs::action::NavigateToPoseFeedback<std::allocator >}’ has no member named ‘distance_remaining’
distanceremaining = feedback->distance_remaining;
^ > {aka const struct nav2_msgs::action::NavigateToPoseFeedback<std::allocator >}’ has no member named ‘number_of_recoveries’
nrecoveries = feedback->number_of_recoveries;
^
/home/mic/ros2_eloquent/src/marathon_ros2/marathon_ros2_wp_manager/src/wp_manager.cpp: In member function ‘void WaypointManager::feedback_callback(rclcpp_action::ClientGoalHandle
~~~~~ /home/mic/ros2_eloquent/src/marathon_ros2/marathon_ros2_wp_manager/src/wp_manager.cpp:130:31: error: ‘using element_type = const struct nav2_msgs::action::NavigateToPoseFeedback<std::allocator~~~~~~~ /home/mic/ros2_eloquent/src/marathon_ros2/marathon_ros2_wp_manager/src/wp_manager.cpp: In member function ‘void WaypointManager::navigate_to_pose(geometry_msgs::msg::PoseStamped)’: /home/mic/ros2_eloquent/src/marathon_ros2/marathon_ros2_wp_manager/src/wp_manager.cpp:190:17: error: ‘rclcpp::FutureReturnCode’ has not been declared rclcpp::FutureReturnCode::SUCCESS) ^~~~make[2]: [CMakeFiles/wp_manager_node.dir/src/wp_manager.cpp.o] Error 1 make[1]: [CMakeFiles/wp_manager_node.dir/all] Error 2 make: *** [all] Error 2Thank you