Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

linux-64 - rebuild Christmas 2024 - switch to rattler-build #229

Open
wants to merge 54 commits into
base: main
Choose a base branch
from

Conversation

traversaro
Copy link
Member

@traversaro
Copy link
Member Author

New build error:

 │ │ [5/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/ros_log_sink.cpp.o
 │ │ FAILED: CMakeFiles/cartographer_ros.dir/src/ros_log_sink.cpp.o
 │ │ $BUILD_PREFIX/bin/x86_64-conda-linux-gnu-c++ -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_FILESYSTEM_NO_LIB -DBOOST_IOSTREAMS_DYN_LINK -DBOOST_IOSTREAMS_NO_LIB -DBOOST_SYSTEM_ │ │ DYN_LINK -DBOOST_SYSTEM_NO_LIB -DDEFAULT_RMW_IMPLEMENTATION=rmw_fastrtps_cpp -DEIGEN_HAS_CXX17_OVERALIGN=0 -DGFLAGS_IS_A_DLL=0 -DGLOG_USE_GFLAGS -DGLOG_USE_GLOG_EXPOR │ │ T -DPROTOBUF_USE_DLLS -DTINYXML2_IMPORT -D_FILE_OFFSET_BITS=64 -Dcartographer_ros_EXPORTS -I$SRC_DIR/ros-humble-cartographer-ros/src/work/include -I$PREFIX/lib/urdfdo │ │ m_headers/cmake/../../../include/urdfdom_headers -I$PREFIX/include/pcl_conversions -isystem $PREFIX/include/eigen3 -isystem $PREFIX/include/pcl-1.14 -isystem $PREFIX/ │ │ include/builtin_interfaces -isystem $PREFIX/include/cartographer_ros_msgs -isystem $PREFIX/include/geometry_msgs -isystem $PREFIX/include/nav_msgs -isystem $PREFIX/in │ │ clude/rclcpp -isystem $PREFIX/include/sensor_msgs -isystem $PREFIX/include/std_msgs -isystem $PREFIX/include/tf2 -isystem $PREFIX/include/tf2_eigen -isystem $PREFIX/i │ │ nclude/tf2_msgs -isystem $PREFIX/include/tf2_ros -isystem $PREFIX/include/visualization_msgs -isystem $PREFIX/include/rosbag2_cpp -isystem $PREFIX/include/rosbag2_sto │ │ rage -isystem $PREFIX/include/urdf -isystem $PREFIX/include/urdfdom -isystem $PREFIX/include/message_filters -isystem $PREFIX/include/pcl_msgs -isystem $PREFIX/includ │ │ e/rosidl_runtime_c -isystem $PREFIX/include/rcutils -isystem $PREFIX/include/rosidl_typesupport_interface -isystem $PREFIX/include/rosidl_runtime_cpp -isystem $PREFIX │ │ /include/rosidl_typesupport_fastrtps_cpp -isystem $PREFIX/include/rmw -isystem $PREFIX/include/rosidl_typesupport_fastrtps_c -isystem $PREFIX/include/rosidl_typesuppo │ │ rt_introspection_c -isystem $PREFIX/include/rosidl_typesupport_introspection_cpp -isystem $PREFIX/include/ament_index_cpp -isystem $PREFIX/include/libstatistics_colle │ │ ctor -isystem $PREFIX/include/rcl -isystem $PREFIX/include/rcl_interfaces -isystem $PREFIX/include/rcl_logging_interface -isystem $PREFIX/include/rcl_yaml_param_parse │ │ r -isystem $PREFIX/include/tracetools -isystem $PREFIX/include/rcpputils -isystem $PREFIX/include/statistics_msgs -isystem $PREFIX/include/rosgraph_msgs -isystem $PRE │ │ FIX/include/rosidl_typesupport_cpp -isystem $PREFIX/include/rosidl_typesupport_c -isystem $PREFIX/include/rclcpp_action -isystem $PREFIX/include/action_msgs -isystem  │ │ $PREFIX/include/unique_identifier_msgs -isystem $PREFIX/include/rcl_action -isystem $PREFIX/include/pluginlib -isystem $PREFIX/include/class_loader -isystem $PREFIX/i │ │ nclude/urdf_parser_plugin -isystem $PREFIX/include/urdfdom_headers -fvisibility-inlines-hidden -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC  │ │ -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem $PREFIX/include -fdebug-prefix-map=$SRC_DIR=/usr/local/src/conda/ros-humble-cartographer-ros- │ │ 2.0.9002 -fdebug-prefix-map=$PREFIX=/usr/local/src/conda-prefix -D__STDC_FORMAT_MACROS=1 -O3 -DNDEBUG -std=gnu++17 -fPIC -fdiagnostics-color=always -Wall -Wextra -MD  │ │ -MT CMakeFiles/cartographer_ros.dir/src/ros_log_sink.cpp.o -MF CMakeFiles/cartographer_ros.dir/src/ros_log_sink.cpp.o.d -o CMakeFiles/cartographer_ros.dir/src/ros_log │ │ _sink.cpp.o -c $SRC_DIR/ros-humble-cartographer-ros/src/work/src/ros_log_sink.cpp
 │ │ $SRC_DIR/ros-humble-cartographer-ros/src/work/src/ros_log_sink.cpp: In member function 'virtual void cartographer_ros::ScopedRosLogSink::send(google::LogSeverity, con │ │ st char*, const char*, int, const tm*, const char*, size_t)':
 │ │ $SRC_DIR/ros-humble-cartographer-ros/src/work/src/ros_log_sink.cpp:57:79: error: no matching function for call to 'google::LogMessageTime::LogMessageTime(const tm&)'
 │ │    57 |       severity, GetBasename(filename), line, ::google::LogMessageTime(*tm_time), message, message_len);
 │ │       |                                                                               ^
 │ │ In file included from $SRC_DIR/ros-humble-cartographer-ros/src/work/include/cartographer_ros/ros_log_sink.h:22,
 │ │                  from $SRC_DIR/ros-humble-cartographer-ros/src/work/src/ros_log_sink.cpp:17:
 │ │    83 |   LogMessageTime();
 │ │       |   ^~~~~~~~~~~~~~
 │ │ $PREFIX/include/glog/logging.h:83:3: note:   candidate expects 0 arguments, 1 provided
 │ │ $PREFIX/include/glog/logging.h:82:20: note: candidate: 'constexpr google::LogMessageTime::LogMessageTime(const google::LogMessageTime&)'
 │ │    82 | struct GLOG_EXPORT LogMessageTime {
 │ │       |                    ^~~~~~~~~~~~~~
 │ │ $PREFIX/include/glog/logging.h:82:20: note:   no known conversion for argument 1 from 'const tm' to 'const google::LogMessageTime&'
 │ │ $PREFIX/include/glog/logging.h:82:20: note: candidate: 'constexpr google::LogMessageTime::LogMessageTime(google::LogMessageTime&&)'
 │ │ $PREFIX/include/glog/logging.h:82:20: note:   no known conversion for argument 1 from 'const tm' to 'google::LogMessageTime&&'
 │ │ [6/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/time_conversion.cpp.o
 │ │ [7/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/ros_map.cpp.o
 │ │ [8/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/ros_map_writing_points_processor.cpp.o
 │ │ [9/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/node_options.cpp.o
 │ │ [10/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/playable_bag.cpp.o
 │ │ [11/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/trajectory_options.cpp.o
 │ │ [12/36] Building CXX object CMakeFiles/cartographer_offline_node.dir/src/offline_node_main.cpp.o
 │ │ [13/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/tf_bridge.cpp.o
 │ │ [14/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/urdf_reader.cpp.o
 │ │ [15/36] Building CXX object CMakeFiles/cartographer_pbstream_to_ros_map.dir/src/pbstream_to_ros_map_main.cpp.o
 │ │ [16/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/submap.cpp.o
 │ │ [17/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/sensor_bridge.cpp.o
 │ │ [18/36] Building CXX object CMakeFiles/cartographer_node.dir/src/node_main.cpp.o
 │ │ [19/36] Building CXX object CMakeFiles/cartographer_pbstream_map_publisher.dir/src/pbstream_map_publisher_main.cpp.o
 │ │ [20/36] Building CXX object CMakeFiles/cartographer_assets_writer.dir/src/assets_writer_main.cpp.o
 │ │ [20/36] Building CXX object CMakeFiles/cartographer_assets_writer.dir/src/assets_writer_main.cpp.o
 │ │       |   ^~~~~~~~~~~~~~
 │ │ $PREFIX/include/glog/logging.h:83:3: note:   candidate expects 0 arguments, 1 provided
 │ │ $PREFIX/include/glog/logging.h:82:20: note: candidate: 'constexpr google::LogMessageTime::LogMessageTime(const google::LogMessageTime&)'
 │ │    82 | struct GLOG_EXPORT LogMessageTime {
 │ │       |                    ^~~~~~~~~~~~~~
 │ │ $PREFIX/include/glog/logging.h:82:20: note:   no known conversion for argument 1 from 'const tm' to 'const google::LogMessageTime&'
 │ │ $PREFIX/include/glog/logging.h:82:20: note: candidate: 'constexpr google::LogMessageTime::LogMessageTime(google::LogMessageTime&&)'
 │ │ $PREFIX/include/glog/logging.h:82:20: note:   no known conversion for argument 1 from 'const tm' to 'google::LogMessageTime&&'
 │ │ [6/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/time_conversion.cpp.o
 │ │ [7/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/ros_map.cpp.o
 │ │ [8/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/ros_map_writing_points_processor.cpp.o
 │ │ [9/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/node_options.cpp.o
 │ │ [10/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/playable_bag.cpp.o
 │ │ [11/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/trajectory_options.cpp.o
 │ │ [12/36] Building CXX object CMakeFiles/cartographer_offline_node.dir/src/offline_node_main.cpp.o
 │ │ [13/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/tf_bridge.cpp.o
 │ │ [14/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/urdf_reader.cpp.o
 │ │ [15/36] Building CXX object CMakeFiles/cartographer_pbstream_to_ros_map.dir/src/pbstream_to_ros_map_main.cpp.o
 │ │ [16/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/submap.cpp.o
 │ │ [17/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/sensor_bridge.cpp.o
 │ │ [18/36] Building CXX object CMakeFiles/cartographer_node.dir/src/node_main.cpp.o
 │ │ [19/36] Building CXX object CMakeFiles/cartographer_pbstream_map_publisher.dir/src/pbstream_map_publisher_main.cpp.o
 │ │ [20/36] Building CXX object CMakeFiles/cartographer_assets_writer.dir/src/assets_writer_main.cpp.o
 │ │ [21/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/map_builder_bridge.cpp.o
 │ │ [22/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/msg_conversion.cpp.o
 │ │ [23/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/assets_writer.cpp.o
 │ │ [24/36] Building CXX object CMakeFiles/cartographer_rosbag_validate.dir/src/rosbag_validate_main.cpp.o
 │ │ [25/36] Building CXX object CMakeFiles/cartographer_occupancy_grid_node.dir/src/occupancy_grid_node_main.cpp.o
 │ │ [26/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/offline_node.cpp.o
 │ │ [27/36] Building CXX object CMakeFiles/cartographer_ros.dir/src/node.cpp.o
 │ │ ninja: build stopped: subcommand failed.
 │ │ × error Script failed with status 1
 │ │ × error Work directory: '/home/straversaro-iit.local/ros-humble/output/bld/rattler-build_ros-humble-cartographer-ros_1734615861/work'
 │ │ × error To debug the build, run it manually in the work directory (execute the `./conda_build.sh` or `conda_build.bat` script)
 │ │
 │ ╰─────────────────── (took 41 seconds)
 │
 ╰─────────────────── (took 45 seconds)
Error:

@traversaro
Copy link
Member Author

Upstream issue: cartographer-project/cartographer_ros#1741 .

@traversaro
Copy link
Member Author

Upstream issue: cartographer-project/cartographer_ros#1741 .

Fix proposed in ros2/cartographer_ros#76 and backported in a local patch.

@traversaro
Copy link
Member Author

rqt-image-view failure (but I think it is a problem of rqt_gui_cpp):

 │ │ -- Found Threads: TRUE
 │ │ -- Found qt_gui_cpp: 2.2.3 ($PREFIX/share/qt_gui_cpp/cmake)
 │ │ -- Found rqt_gui_cpp: 1.1.7 ($PREFIX/share/rqt_gui_cpp/cmake)
 │ │ -- Found image_transport: 3.1.10 ($PREFIX/share/image_transport/cmake)
 │ │ -- Found cv_bridge: 3.2.1 ($PREFIX/share/cv_bridge/cmake)
 │ │ -- Configuring done (2.2s)
 │ │ CMake Error in CMakeLists.txt:
 │ │   Imported target "rqt_gui_cpp::rqt_gui_cpp" includes non-existent path
 │ │     "{CONDA_BUILD_SYSROOT}/usr/include"
 │ │   in its INTERFACE_INCLUDE_DIRECTORIES.  Possible reasons include:
 │ │   * The path was deleted, renamed, or moved to another location.
 │ │   * An install or uninstall procedure did not complete successfully.
 │ │   * The installation package was faulty and references files it does not
 │ │   provide.
 │ │
 │ │ CMake Warning:
 │ │ -- Generating done (0.0s)
 │ │   Manually-specified variables were not used by the project:
 │ │     AMENT_PREFIX_PATH
 │ │     CATKIN_SKIP_TESTING
 │ │     CMAKE_INSTALL_LIBDIR
 │ │     CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP
 │ │     PYTHON_EXECUTABLE
 │ │     PYTHON_INSTALL_DIR
 │ │     Python_EXECUTABLE
 │ │     SETUPTOOLS_DEB_LAYOUT
 │ │
 │ │ CMake Generate step failed.  Build files cannot be regenerated correctly.
 │ │ ninja: error: loading 'build.ninja': No such file or directory

@Tobias-Fischer
Copy link
Contributor

Thanks for all your work @traversaro!

This problem used to be taken care off by https://github.com/traversaro/ros-humble/blob/71d4b56a3654a6e1e2fedb8f29ed9769065f284a/conda_build_config.yaml#L33 - I’m not sure if rattler-build offers this functionality yet @wolfv?

@traversaro
Copy link
Member Author

Something that we could try is to get rid of most x11 and OpenGL packages and just use regular packages now that are available, this may remove the need for that.

@Tobias-Fischer
Copy link
Contributor

Something that we could try is to get rid of most x11 and OpenGL packages and just use regular packages now that are available, this may remove the need for that.

I was just about to say exactly this :)

@wolfv
Copy link
Member

wolfv commented Dec 19, 2024

Yes I added this functionality to rattler build. In the jazzy repo you should find an example. It's in the recipe though, not in the variant config

@traversaro
Copy link
Member Author

New error:

 │ │ [1/11] Building CXX object CMakeFiles/rosx_introspection.dir/src/ros_parser.cpp.o
 │ │ FAILED: CMakeFiles/rosx_introspection.dir/src/ros_parser.cpp.o
 │ │ $BUILD_PREFIX/bin/x86_64-conda-linux-gnu-c++ -DDEFAULT_RMW_IMPLEMENTATION=rmw_fastrtps_cpp -DTINYXML2_IMPORT -D_FIL
 │ │ E_OFFSET_BITS=64 -Drosx_introspection_EXPORTS -I$SRC_DIR/ros-humble-rosx-introspection/src/work/include -isystem $P
 │ │ REFIX/include/ament_index_cpp -isystem $PREFIX/include/rclcpp -isystem $PREFIX/include/rosbag2_cpp -isystem $PREFIX
 │ │ /include/libstatistics_collector -isystem $PREFIX/include/builtin_interfaces -isystem $PREFIX/include/rosidl_runtim
 │ │ e_c -isystem $PREFIX/include/rcutils -isystem $PREFIX/include/rosidl_typesupport_interface -isystem $PREFIX/include
 │ │ /rosidl_runtime_cpp -isystem $PREFIX/include/rosidl_typesupport_fastrtps_cpp -isystem $PREFIX/include/rmw -isystem
 │ │ $PREFIX/include/rosidl_typesupport_fastrtps_c -isystem $PREFIX/include/rosidl_typesupport_introspection_c -isystem
 │ │ $PREFIX/include/rosidl_typesupport_introspection_cpp -isystem $PREFIX/include/rcl -isystem $PREFIX/include/rcl_inte
 │ │ rfaces -isystem $PREFIX/include/rcl_logging_interface -isystem $PREFIX/include/rcl_yaml_param_parser -isystem $PREF
 │ │ IX/include/tracetools -isystem $PREFIX/include/rcpputils -isystem $PREFIX/include/statistics_msgs -isystem $PREFIX/
 │ │ include/rosgraph_msgs -isystem $PREFIX/include/rosidl_typesupport_cpp -isystem $PREFIX/include/rosidl_typesupport_c
 │ │  -isystem $PREFIX/include/pluginlib -isystem $PREFIX/include/class_loader -isystem $PREFIX/include/rosbag2_storage
 │ │ -fvisibility-inlines-hidden -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protecto
 │ │ r-strong -fno-plt -O2 -ffunction-sections -pipe -isystem $PREFIX/include -fdebug-prefix-map=$SRC_DIR=/usr/local/src
 │ │ /conda/ros-humble-rosx-introspection-1.0.2 -fdebug-prefix-map=$PREFIX=/usr/local/src/conda-prefix -D__STDC_FORMAT_M
 │ │ ACROS=1 -O3 -DNDEBUG -fPIC -fdiagnostics-color=always -MD -MT CMakeFiles/rosx_introspection.dir/src/ros_parser.cpp.
 │ │ o -MF CMakeFiles/rosx_introspection.dir/src/ros_parser.cpp.o.d -o CMakeFiles/rosx_introspection.dir/src/ros_parser.
 │ │ cpp.o -c $SRC_DIR/ros-humble-rosx-introspection/src/work/src/ros_parser.cpp
 │ │ $SRC_DIR/ros-humble-rosx-introspection/src/work/src/ros_parser.cpp:29:10: fatal error: rapidjson/document.h: No suc
 │ │ h file or directory
 │ │    29 | #include "rapidjson/document.h"
 │ │       |          ^~~~~~~~~~~~~~~~~~~~~~
 │ │ compilation terminated.
 │ │ [2/11] Building CXX object CMakeFiles/rosx_introspection.dir/src/stringtree_leaf.cpp.o
 │ │ [3/11] Building CXX object CMakeFiles/rosx_introspection.dir/src/deserializer.cpp.o
 │ │ [4/11] Building CXX object CMakeFiles/rosx_introspection.dir/src/ros_type.cpp.o
 │ │ [5/11] Building CXX object CMakeFiles/rosx_introspection.dir/src/serializer.cpp.o
 │ │ [6/11] Building CXX object CMakeFiles/rosx_introspection.dir/src/ros_utils/ros2_helpers.cpp.o
 │ │ [7/11] Building CXX object CMakeFiles/rosx_introspection.dir/src/ros_field.cpp.o
 │ │ [8/11] Building CXX object CMakeFiles/rosx_introspection.dir/src/ros_utils/message_definition_cache.cpp.o
 │ │ [9/11] Building CXX object CMakeFiles/rosx_introspection.dir/src/ros_message.cpp.o
 │ │ ninja: build stopped: subcommand failed.
 │ │ × error Script failed with status 1
 │ │ × error Work directory: '/home/straversaro-iit.local/ros-humble/output/bld/rattler-build_ros-humble-rosx-introspecti
 │ │ × error on_1734640695/work'
 │ │ × error To debug the build, run it manually in the work directory (execute the `./conda_build.sh` or `conda_build.ba
 │ │ × error t` script)

@Tobias-Fischer
Copy link
Contributor

@Tobias-Fischer
Copy link
Contributor

+The upstream https://github.com/facontidavide/rosx_introspection/blob/master/CMakeLists.txt does not include the required target_link_libraries etc for rapidjson

@traversaro
Copy link
Member Author

@traversaro
Copy link
Member Author

+The upstream https://github.com/facontidavide/rosx_introspection/blob/master/CMakeLists.txt does not include the required target_link_libraries etc for rapidjson

Yes, but the dependency is header-only, so I think it will work without CMake modifications.

@traversaro
Copy link
Member Author

 │ │ -- Found motion_capture_tracking_interfaces: 1.0.5 ($PREFIX/share/motion_capture_tracking_interfaces/cmake)
 │ │ -- Found eigen3_cmake_module: 0.1.1 ($PREFIX/share/eigen3_cmake_module/cmake)
 │ │ -- Found Eigen3: TRUE (found version "3.4.0")
 │ │ CMake Warning (dev) at $PREFIX/share/pcl-1.14/PCLConfig.cmake:121 (find_package):
 │ │   Policy CMP0167 is not set: The FindBoost module is removed.  Run "cmake
 │ │   --help-policy CMP0167" for policy details.  Use the cmake_policy command to
 │ │   set the policy and suppress this warning.
 │ │ Call Stack (most recent call first):
 │ │   $PREFIX/share/pcl-1.14/PCLConfig.cmake:294 (find_boost)
 │ │   $PREFIX/share/pcl-1.14/PCLConfig.cmake:559 (find_external_library)
 │ │   CMakeLists.txt:19 (find_package)
 │ │ This warning is for project developers.  Use -Wno-dev to suppress it.
 │ │
 │ │ -- Could NOT find Boost (missing: Boost_INCLUDE_DIR system iostreams filesystem) (Required is at least version "1.65.0")
 │ │ CMake Error at $PREFIX/share/pcl-1.14/PCLConfig.cmake:59 (message):
 │ │   common is required but boost was not found
 │ │ Call Stack (most recent call first):
 │ │   $PREFIX/share/pcl-1.14/PCLConfig.cmake:370 (pcl_report_not_found)
 │ │   $PREFIX/share/pcl-1.14/PCLConfig.cmake:559 (find_external_library)
 │ │   CMakeLists.txt:19 (find_package)
 │ │
 │ │ -- Configuring incomplete, errors occurred!
 │ │ ninja: error: loading 'build.ninja': No such file or directory
 │ │ × error Script failed with status 1
 │ │ × error Work directory: '/home/straversaro-iit.local/ros-humble/output/bld/rattler-build_ros-humble-motion-capture-tracking_1734641871/work'
 │ │ × error To debug the build, run it manually in the work directory (execute the `./conda_build.sh` or `conda_build.bat` script)

This is a missing aspect of PCL packaging in conda-forge, as we do not have a pcl-devel that can depend on libboost-devel. I think we can just add this transitive dependency manually.

@traversaro
Copy link
Member Author

 │ │ -- Build files have been written to: $SRC_DIR/build
 │ │ [1/9] Building CXX object CMakeFiles/moveit_ros_benchmarks.dir/src/BenchmarkOptions.cpp.o
 │ │ [4/9] Building CXX object CMakeFiles/moveit_ros_benchmarks.dir/src/BenchmarkExecutor.cpp.o
 │ │ FAILED: CMakeFiles/moveit_ros_benchmarks.dir/src/BenchmarkExecutor.cpp.o
 │ │ $BUILD_PREFIX/bin/x86_64-conda-linux-gnu-c++ -DBOOST_CHRONO_DYN_LINK -DBOOST_CHRONO_NO_LIB -DBOOST_DATE_TIME_DYN_LINK -DBOOST_DATE_TIME_NO_LIB -DBOOST_FILESYSTEM_DYN_ │ │ LINK -DBOOST_FILESYSTEM_NO_LIB -DBOOST_IOSTREAMS_DYN_LINK -DBOOST_IOSTREAMS_NO_LIB -DBOOST_PROGRAM_OPTIONS_DYN_LINK -DBOOST_PROGRAM_OPTIONS_NO_LIB -DBOOST_REGEX_DYN_L │ │ INK -DBOOST_REGEX_NO_LIB -DBOOST_SERIALIZATION_DYN_LINK -DBOOST_SERIALIZATION_NO_LIB -DBOOST_SYSTEM_DYN_LINK -DBOOST_SYSTEM_NO_LIB -DBOOST_THREAD_DYN_LINK -DBOOST_THR │ │ EAD_NO_LIB -DDEFAULT_RMW_IMPLEMENTATION=rmw_fastrtps_cpp -DFMT_SHARED -DTINYXML2_IMPORT -D_FILE_OFFSET_BITS=64 -Dmoveit_ros_benchmarks_EXPORTS -I$SRC_DIR/ros-humble-m │ │ oveit-ros-benchmarks/src/work/include -isystem $PREFIX/include/rclcpp -isystem $PREFIX/include/tf2_eigen -isystem $PREFIX/include/bullet -isystem $PREFIX/include/move │ │ it_butterworth_parameters -isystem $PREFIX/include/eigen3 -isystem $PREFIX/include/pluginlib -isystem $PREFIX/include/ament_index_cpp -isystem $PREFIX/include/libstat │ │ istics_collector -isystem $PREFIX/include/builtin_interfaces -isystem $PREFIX/include/rosidl_runtime_c -isystem $PREFIX/include/rcutils -isystem $PREFIX/include/rosid │ │ l_typesupport_interface -isystem $PREFIX/include/rosidl_runtime_cpp -isystem $PREFIX/include/rosidl_typesupport_fastrtps_cpp -isystem $PREFIX/include/rmw -isystem $PR │ │ EFIX/include/rosidl_typesupport_fastrtps_c -isystem $PREFIX/include/rosidl_typesupport_introspection_c -isystem $PREFIX/include/rosidl_typesupport_introspection_cpp - │ │ isystem $PREFIX/include/rcl -isystem $PREFIX/include/rcl_interfaces -isystem $PREFIX/include/rcl_logging_interface -isystem $PREFIX/include/rcl_yaml_param_parser -isy │ │ stem $PREFIX/include/tracetools -isystem $PREFIX/include/rcpputils -isystem $PREFIX/include/statistics_msgs -isystem $PREFIX/include/rosgraph_msgs -isystem $PREFIX/in │ │ clude/rosidl_typesupport_cpp -isystem $PREFIX/include/rosidl_typesupport_c -isystem $PREFIX/include/geometry_msgs -isystem $PREFIX/include/std_msgs -isystem $PREFIX/i │ │ nclude/tf2 -isystem $PREFIX/include/tf2_ros -isystem $PREFIX/include/message_filters -isystem $PREFIX/include/rclcpp_action -isystem $PREFIX/include/action_msgs -isys │ │ tem $PREFIX/include/unique_identifier_msgs -isystem $PREFIX/include/rcl_action -isystem $PREFIX/include/tf2_msgs -isystem $PREFIX/include/urdf -isystem $PREFIX/includ │ │ e/urdf_parser_plugin -isystem $PREFIX/include/urdfdom_headers -isystem $PREFIX/include/urdfdom -isystem $PREFIX/include/class_loader -isystem $PREFIX/include/visualiz │ │ ation_msgs -isystem $PREFIX/include/sensor_msgs -isystem $PREFIX/include/octomap_msgs -isystem $PREFIX/include/geometric_shapes -isystem $PREFIX/include/resource_retr
 │ │ iever -isystem $PREFIX/include/shape_msgs -isystem $PREFIX/include/tf2_geometry_msgs -isystem $PREFIX/include/angles -isystem $PREFIX/include/moveit_msgs -isystem $PR │ │ EFIX/include/object_recognition_msgs -isystem $PREFIX/include/trajectory_msgs -isystem $PREFIX/include/parameter_traits -isystem $PREFIX/include/rsl -isystem $PREFIX/ │ │ include/rclcpp_lifecycle -isystem $PREFIX/include/rcl_lifecycle -isystem $PREFIX/include/lifecycle_msgs -isystem $PREFIX/include/kdl_parser -fvisibility-inlines-hidde │ │ n -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem $PREFIX/include -fde │ │ bug-prefix-map=$SRC_DIR=/usr/local/src/conda/ros-humble-moveit-ros-benchmarks-2.5.6 -fdebug-prefix-map=$PREFIX=/usr/local/src/conda-prefix -D__STDC_FORMAT_MACROS=1 -O │ │ 3 -DNDEBUG -std=c++17 -fPIC -fdiagnostics-color=always -Wall -Wextra -Wwrite-strings -Wunreachable-code -Wpointer-arith -Wredundant-decls -Wcast-qual -Wno-maybe-unini │ │ tialized -mfpmath=sse -msse -msse2 -msse3 -mssse3 -MD -MT CMakeFiles/moveit_ros_benchmarks.dir/src/BenchmarkExecutor.cpp.o -MF CMakeFiles/moveit_ros_benchmarks.dir/sr │ │ c/BenchmarkExecutor.cpp.o.d -o CMakeFiles/moveit_ros_benchmarks.dir/src/BenchmarkExecutor.cpp.o -c $SRC_DIR/ros-humble-moveit-ros-benchmarks/src/work/src/BenchmarkExe │ │ cutor.cpp
 │ │ In file included from $SRC_DIR/ros-humble-moveit-ros-benchmarks/src/work/src/BenchmarkExecutor.cpp:47:
 │ │ $PREFIX/include/boost/progress.hpp:23:3: error: #error This header is deprecated and will be removed. (You can define BOOST_TIMER_ENABLE_DEPRECATED to suppress this e │ │ rror.)
 │ │    23 | # error This header is deprecated and will be removed. (You can define BOOST_TIMER_ENABLE_DEPRECATED to suppress this error.)
 │ │       |   ^~~~~
 │ │ In file included from $PREFIX/include/boost/progress.hpp:29:
 │ │ $PREFIX/include/boost/timer.hpp:21:3: error: #error This header is deprecated and will be removed. (You can define BOOST_TIMER_ENABLE_DEPRECATED to suppress this erro │ │ r.)
 │ │    21 | # error This header is deprecated and will be removed. (You can define BOOST_TIMER_ENABLE_DEPRECATED to suppress this error.)
 │ │       |   ^~~~~
 │ │ ninja: build stopped: subcommand failed.
 │ │ × error Script failed with status 1
 │ │ × error Work directory: '/home/straversaro-iit.local/ros-humble/output/bld/rattler-build_ros-humble-moveit-ros-benchmarks_1734645048/work'
 │ │ × error To debug the build, run it manually in the work directory (execute the `./conda_build.sh` or `conda_build.bat` script)
 │ │

@traversaro
Copy link
Member Author

 │ │ -- Build files have been written to: $SRC_DIR/build
 │ │ [1/9] Building CXX object CMakeFiles/moveit_ros_benchmarks.dir/src/BenchmarkOptions.cpp.o
 │ │ [4/9] Building CXX object CMakeFiles/moveit_ros_benchmarks.dir/src/BenchmarkExecutor.cpp.o
 │ │ FAILED: CMakeFiles/moveit_ros_benchmarks.dir/src/BenchmarkExecutor.cpp.o
 │ │ $BUILD_PREFIX/bin/x86_64-conda-linux-gnu-c++ -DBOOST_CHRONO_DYN_LINK -DBOOST_CHRONO_NO_LIB -DBOOST_DATE_TIME_DYN_LINK -DBOOST_DATE_TIME_NO_LIB -DBOOST_FILESYSTEM_DYN_ │ │ LINK -DBOOST_FILESYSTEM_NO_LIB -DBOOST_IOSTREAMS_DYN_LINK -DBOOST_IOSTREAMS_NO_LIB -DBOOST_PROGRAM_OPTIONS_DYN_LINK -DBOOST_PROGRAM_OPTIONS_NO_LIB -DBOOST_REGEX_DYN_L │ │ INK -DBOOST_REGEX_NO_LIB -DBOOST_SERIALIZATION_DYN_LINK -DBOOST_SERIALIZATION_NO_LIB -DBOOST_SYSTEM_DYN_LINK -DBOOST_SYSTEM_NO_LIB -DBOOST_THREAD_DYN_LINK -DBOOST_THR │ │ EAD_NO_LIB -DDEFAULT_RMW_IMPLEMENTATION=rmw_fastrtps_cpp -DFMT_SHARED -DTINYXML2_IMPORT -D_FILE_OFFSET_BITS=64 -Dmoveit_ros_benchmarks_EXPORTS -I$SRC_DIR/ros-humble-m │ │ oveit-ros-benchmarks/src/work/include -isystem $PREFIX/include/rclcpp -isystem $PREFIX/include/tf2_eigen -isystem $PREFIX/include/bullet -isystem $PREFIX/include/move │ │ it_butterworth_parameters -isystem $PREFIX/include/eigen3 -isystem $PREFIX/include/pluginlib -isystem $PREFIX/include/ament_index_cpp -isystem $PREFIX/include/libstat │ │ istics_collector -isystem $PREFIX/include/builtin_interfaces -isystem $PREFIX/include/rosidl_runtime_c -isystem $PREFIX/include/rcutils -isystem $PREFIX/include/rosid │ │ l_typesupport_interface -isystem $PREFIX/include/rosidl_runtime_cpp -isystem $PREFIX/include/rosidl_typesupport_fastrtps_cpp -isystem $PREFIX/include/rmw -isystem $PR │ │ EFIX/include/rosidl_typesupport_fastrtps_c -isystem $PREFIX/include/rosidl_typesupport_introspection_c -isystem $PREFIX/include/rosidl_typesupport_introspection_cpp - │ │ isystem $PREFIX/include/rcl -isystem $PREFIX/include/rcl_interfaces -isystem $PREFIX/include/rcl_logging_interface -isystem $PREFIX/include/rcl_yaml_param_parser -isy │ │ stem $PREFIX/include/tracetools -isystem $PREFIX/include/rcpputils -isystem $PREFIX/include/statistics_msgs -isystem $PREFIX/include/rosgraph_msgs -isystem $PREFIX/in │ │ clude/rosidl_typesupport_cpp -isystem $PREFIX/include/rosidl_typesupport_c -isystem $PREFIX/include/geometry_msgs -isystem $PREFIX/include/std_msgs -isystem $PREFIX/i │ │ nclude/tf2 -isystem $PREFIX/include/tf2_ros -isystem $PREFIX/include/message_filters -isystem $PREFIX/include/rclcpp_action -isystem $PREFIX/include/action_msgs -isys │ │ tem $PREFIX/include/unique_identifier_msgs -isystem $PREFIX/include/rcl_action -isystem $PREFIX/include/tf2_msgs -isystem $PREFIX/include/urdf -isystem $PREFIX/includ │ │ e/urdf_parser_plugin -isystem $PREFIX/include/urdfdom_headers -isystem $PREFIX/include/urdfdom -isystem $PREFIX/include/class_loader -isystem $PREFIX/include/visualiz │ │ ation_msgs -isystem $PREFIX/include/sensor_msgs -isystem $PREFIX/include/octomap_msgs -isystem $PREFIX/include/geometric_shapes -isystem $PREFIX/include/resource_retr
 │ │ iever -isystem $PREFIX/include/shape_msgs -isystem $PREFIX/include/tf2_geometry_msgs -isystem $PREFIX/include/angles -isystem $PREFIX/include/moveit_msgs -isystem $PR │ │ EFIX/include/object_recognition_msgs -isystem $PREFIX/include/trajectory_msgs -isystem $PREFIX/include/parameter_traits -isystem $PREFIX/include/rsl -isystem $PREFIX/ │ │ include/rclcpp_lifecycle -isystem $PREFIX/include/rcl_lifecycle -isystem $PREFIX/include/lifecycle_msgs -isystem $PREFIX/include/kdl_parser -fvisibility-inlines-hidde │ │ n -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem $PREFIX/include -fde │ │ bug-prefix-map=$SRC_DIR=/usr/local/src/conda/ros-humble-moveit-ros-benchmarks-2.5.6 -fdebug-prefix-map=$PREFIX=/usr/local/src/conda-prefix -D__STDC_FORMAT_MACROS=1 -O │ │ 3 -DNDEBUG -std=c++17 -fPIC -fdiagnostics-color=always -Wall -Wextra -Wwrite-strings -Wunreachable-code -Wpointer-arith -Wredundant-decls -Wcast-qual -Wno-maybe-unini │ │ tialized -mfpmath=sse -msse -msse2 -msse3 -mssse3 -MD -MT CMakeFiles/moveit_ros_benchmarks.dir/src/BenchmarkExecutor.cpp.o -MF CMakeFiles/moveit_ros_benchmarks.dir/sr │ │ c/BenchmarkExecutor.cpp.o.d -o CMakeFiles/moveit_ros_benchmarks.dir/src/BenchmarkExecutor.cpp.o -c $SRC_DIR/ros-humble-moveit-ros-benchmarks/src/work/src/BenchmarkExe │ │ cutor.cpp
 │ │ In file included from $SRC_DIR/ros-humble-moveit-ros-benchmarks/src/work/src/BenchmarkExecutor.cpp:47:
 │ │ $PREFIX/include/boost/progress.hpp:23:3: error: #error This header is deprecated and will be removed. (You can define BOOST_TIMER_ENABLE_DEPRECATED to suppress this e │ │ rror.)
 │ │    23 | # error This header is deprecated and will be removed. (You can define BOOST_TIMER_ENABLE_DEPRECATED to suppress this error.)
 │ │       |   ^~~~~
 │ │ In file included from $PREFIX/include/boost/progress.hpp:29:
 │ │ $PREFIX/include/boost/timer.hpp:21:3: error: #error This header is deprecated and will be removed. (You can define BOOST_TIMER_ENABLE_DEPRECATED to suppress this erro │ │ r.)
 │ │    21 | # error This header is deprecated and will be removed. (You can define BOOST_TIMER_ENABLE_DEPRECATED to suppress this error.)
 │ │       |   ^~~~~
 │ │ ninja: build stopped: subcommand failed.
 │ │ × error Script failed with status 1
 │ │ × error Work directory: '/home/straversaro-iit.local/ros-humble/output/bld/rattler-build_ros-humble-moveit-ros-benchmarks_1734645048/work'
 │ │ × error To debug the build, run it manually in the work directory (execute the `./conda_build.sh` or `conda_build.bat` script)
 │ │

I can't work on this more today, but I wonder if we need to back port https://github.com/moveit/moveit2/pull/2811/files .

@Tobias-Fischer
Copy link
Contributor

New failure:

2024-12-20T02:48:02.1192801Z  │ │ In file included from /usr/include/python3.12/Python.h:12,
2024-12-20T02:48:02.1194322Z  │ │                  from $SRC_DIR/ros-humble-webots-ros2-driver/src/work/include/webots_ros2_driver/PythonPlugin.hpp:18,
2024-12-20T02:48:02.1195873Z  │ │                  from $SRC_DIR/ros-humble-webots-ros2-driver/src/work/src/WebotsNode.cpp:39:
2024-12-20T02:48:02.1197530Z  │ │ /usr/include/python3.12/pyconfig.h:3:12: fatal error: x86_64-linux-gnu/python3.12/pyconfig.h: No such file or directory
2024-12-20T02:48:02.1205015Z  │ │     3 | #  include <x86_64-linux-gnu/python3.12/pyconfig.h>

This is because of:

2024-12-20T02:47:35.7800525Z  │ │ -- Found Python: /usr/include/python3.12 (found version "3.12.3") found components: Development Development.Module Development.Embed

Note we already have: https://github.com/traversaro/ros-humble/blob/rebuild-christmas-2024-linux-64-rattler-build/patch/ros-humble-webots-ros2-driver.patch

I wonder if $ENV{ROS_DISTRO} is properly set?

@traversaro
Copy link
Member Author

I wonder if $ENV{ROS_DISTRO} is properly set?

In theory that is set in the activation scripts of ros-humble-ros-environment , and that is installed in the host dependencies of the failing package. I will check with conda_build.sh locally to understand why it is failing.

@traversaro
Copy link
Member Author

Great, I could not reproduce this locally.

@traversaro
Copy link
Member Author

Great, I could not reproduce this locally.

I also tried to print the ROS_DISTRO env, and it was working for me:

 │ │ -- ====================> ROS_DISTRO: humble

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants