cyberbotics / webots_ros2

Webots ROS 2 packages
Apache License 2.0
402 stars 148 forks source link

webots_ros2_control fails to build on ROS 2 Rolling #944

Closed nuclearsandwich closed 2 months ago

nuclearsandwich commented 2 months ago

Describe the Bug

Build failures on build.ros2.org for ROS 2 Rolling for webots_ros2 2023.1.2-1 beginning 2024-07-01

Steps to Reproduce

  1. Go to https://build.ros2.org/view/Rbin_uN64/job/Rbin_uN64__webots_ros2_control__ubuntu_noble_amd64__binary/lastBuild/ (#49 as of writing.)
  2. Click "Console Output"
    Building CXX object CMakeFiles/webots_ros2_control.dir/src/Ros2Control.cpp.o
    /usr/lib/ccache/c++ -DDEFAULT_RMW_IMPLEMENTATION=rmw_fastrtps_cpp -DFASTCDR_DYN_LINK -DHARDWARE_INTERFACE_VERSION_MAJOR=4 -DHARDWARE_INTERFACE_VERSION_MINOR=12 -DPLUGINLIB__DISABLE_BOOST_FUNCTIONS -DROLLING -DTINYXML2_IMPORT -D_FILE_OFFSET_BITS=64 -Dwebots_ros2_control_EXPORTS -I/tmp/binarydeb/ros-rolling-webots-ros2-control-2023.1.2/include -I/opt/ros/rolling/include/webots/c -I/opt/ros/rolling/include/webots/cpp -I/opt/ros/rolling/include/tf2_geometry_msgs -isystem /opt/ros/rolling/include/hardware_interface -isystem /opt/ros/rolling/include/controller_manager -isystem /opt/ros/rolling/include/pluginlib -isystem /opt/ros/rolling/include/rclcpp -isystem /opt/ros/rolling/include -isystem /opt/ros/rolling/include/sensor_msgs -isystem /opt/ros/rolling/include/std_msgs -isystem /opt/ros/rolling/include/tf2_ros -isystem /opt/ros/rolling/include/vision_msgs -isystem /opt/ros/rolling/include/webots_ros2_msgs -isystem /opt/ros/rolling/include/control_msgs -isystem /opt/ros/rolling/include/action_msgs -isystem /opt/ros/rolling/include/builtin_interfaces -isystem /opt/ros/rolling/include/rosidl_runtime_c -isystem /opt/ros/rolling/include/rcutils -isystem /opt/ros/rolling/include/rosidl_typesupport_interface -isystem /opt/ros/rolling/include/unique_identifier_msgs -isystem /opt/ros/rolling/include/service_msgs -isystem /opt/ros/rolling/include/geometry_msgs -isystem /opt/ros/rolling/include/trajectory_msgs -isystem /opt/ros/rolling/include/fastcdr -isystem /opt/ros/rolling/include/rosidl_runtime_cpp -isystem /opt/ros/rolling/include/rosidl_typesupport_fastrtps_cpp -isystem /opt/ros/rolling/include/rmw -isystem /opt/ros/rolling/include/rosidl_dynamic_typesupport -isystem /opt/ros/rolling/include/rosidl_typesupport_fastrtps_c -isystem /opt/ros/rolling/include/rosidl_typesupport_introspection_c -isystem /opt/ros/rolling/include/rosidl_typesupport_introspection_cpp -isystem /opt/ros/rolling/include/lifecycle_msgs -isystem /opt/ros/rolling/include/ament_index_cpp -isystem /opt/ros/rolling/include/class_loader -isystem /opt/ros/rolling/include/rcpputils -isystem /opt/ros/rolling/include/rclcpp_lifecycle -isystem /opt/ros/rolling/include/rcl -isystem /opt/ros/rolling/include/rcl_interfaces -isystem /opt/ros/rolling/include/rcl_logging_interface -isystem /opt/ros/rolling/include/rcl_yaml_param_parser -isystem /opt/ros/rolling/include/type_description_interfaces -isystem /opt/ros/rolling/include/libstatistics_collector -isystem /opt/ros/rolling/include/statistics_msgs -isystem /opt/ros/rolling/include/rosgraph_msgs -isystem /opt/ros/rolling/include/rosidl_typesupport_cpp -isystem /opt/ros/rolling/include/rosidl_typesupport_c -isystem /opt/ros/rolling/include/tracetools -isystem /opt/ros/rolling/include/rcl_lifecycle -isystem /opt/ros/rolling/include/joint_limits -isystem /opt/ros/rolling/include/urdf -isystem /opt/ros/rolling/include/urdfdom -isystem /opt/ros/rolling/include/urdfdom_headers -isystem /opt/ros/rolling/include/controller_interface -isystem /opt/ros/rolling/include/controller_manager_msgs -isystem /opt/ros/rolling/include/diagnostic_msgs -isystem /opt/ros/rolling/include/realtime_tools -isystem /opt/ros/rolling/include/rclcpp_action -isystem /opt/ros/rolling/include/rcl_action -isystem /usr/include/eigen3 -isystem /opt/ros/rolling/include/message_filters -isystem /opt/ros/rolling/include/tf2 -isystem /opt/ros/rolling/include/tf2_msgs -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/tmp/binarydeb/ros-rolling-webots-ros2-control-2023.1.2=. -flto=auto -ffat-lto-objects -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fdebug-prefix-map=/tmp/binarydeb/ros-rolling-webots-ros2-control-2023.1.2=/usr/src/ros-rolling-webots-ros2-control-2023.1.2-1noble.20240701.185558 -DNDEBUG -Wdate-time -D_FORTIFY_SOURCE=3 -std=gnu++17 -fPIC -Wall -Wextra -Wpedantic -MD -MT CMakeFiles/webots_ros2_control.dir/src/Ros2Control.cpp.o -MF CMakeFiles/webots_ros2_control.dir/src/Ros2Control.cpp.o.d -o CMakeFiles/webots_ros2_control.dir/src/Ros2Control.cpp.o -c /tmp/binarydeb/ros-rolling-webots-ros2-control-2023.1.2/src/Ros2Control.cpp
    /tmp/binarydeb/ros-rolling-webots-ros2-control-2023.1.2/src/Ros2Control.cpp: In member function ‘virtual void webots_ros2_control::Ros2Control::init(webots_ros2_driver::WebotsNode*, std::unordered_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >&)’:
    /tmp/binarydeb/ros-rolling-webots-ros2-control-2023.1.2/src/Ros2Control.cpp:97:24: error: ‘class hardware_interface::ResourceManager’ has no member named ‘load_urdf’
    97 |       resourceManager->load_urdf(urdfString, false, false);
      |                        ^~~~~~~~~
    make[4]: *** [CMakeFiles/webots_ros2_control.dir/build.make:79: CMakeFiles/webots_ros2_control.dir/src/Ros2Control.cpp.o] Error 1
    make[4]: Leaving directory '/tmp/binarydeb/ros-rolling-webots-ros2-control-2023.1.2/.obj-x86_64-linux-gnu'
    make[3]: Leaving directory '/tmp/binarydeb/ros-rolling-webots-ros2-control-2023.1.2/.obj-x86_64-linux-gnu'
    make[3]: *** [CMakeFiles/Makefile2:142: CMakeFiles/webots_ros2_control.dir/all] Error 2
    make[2]: *** [Makefile:149: all] Error 2
    make[2]: Leaving directory '/tmp/binarydeb/ros-rolling-webots-ros2-control-2023.1.2/.obj-x86_64-linux-gnu'
    dh_auto_build: error: cd .obj-x86_64-linux-gnu && make -j1 VERBOSE=1 returned exit code 2
    make[1]: *** [debian/rules:44: override_dh_auto_build] Error 255
    make[1]: Leaving directory '/tmp/binarydeb/ros-rolling-webots-ros2-control-2023.1.2'
    make: *** [debian/rules:27: build] Error 2

Affected Packages List of affected packages:

Screenshots If applicable, add screenshots to help explain your problem.

System

Additional context

Since there was no webots_ros2 release between the last successful build and the current failing build, it's likely that a change in a build dependency introduced this failure.