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

Revert eigenpy in Melodic to 2.7.8 #34283

Merged
merged 3 commits into from
Aug 31, 2022
Merged

Conversation

clalancette
Copy link
Contributor

Despite the recent fixes, we still have packages failing to compile against the newer versions, like: https://build.ros.org/view/Mbin_uB64/job/Mbin_uB64__dynamic-graph-python__ubuntu_bionic_amd64__binary/ . Let's revert it for now and see if that helps.

@wxmerkt FYI

@github-actions github-actions bot added the melodic Issue/PR is for the ROS 1 Melodic distribution label Aug 31, 2022
@clalancette clalancette merged commit 35e44af into master Aug 31, 2022
@clalancette clalancette deleted the clalancette/revert-eigenpy branch August 31, 2022 18:18
@wxmerkt
Copy link
Contributor

wxmerkt commented Aug 31, 2022

@clalancette Thanks for the note, I wasn't aware of these build failures and it's due to these packages also relying on jrl-cmakemodules and not having been upgraded.

@nim65s We need new releases of dynamic graph and possibly the SoT packages for the CMake fixes. I dont have access to the corresponding release packages and don't use them. Can you please prepare releases for them such that we can get the reverts for EigenPy & HPP-FCL reverted back to the current versions?

@nim65s
Copy link
Contributor

nim65s commented Aug 31, 2022

I'm still fixing those packages internally for eigenpy 2.7.12, but each new rebuild fix a package and break another, or fix a distro and break another… But I still should be able to fix all those packages asap.

But when they will be fixed, they will depend on eigenpy 2.7.12, as I clearly can't afford to provide more compatibility.

@rhaschke
Copy link
Contributor

rhaschke commented Sep 1, 2022

Dear @clalancette,
I'm afraid that version 2.7.8 is broken too. The latest release sync was using 2.7.5!
The build of moveit_ros_planning_interface exhibits the well-known warning:

20:48:19 -- eigenpy FOUND. eigenpy at /opt/ros/melodic/lib/libeigenpy.so
20:48:19 CMake Warning at /usr/share/cmake-3.10/Modules/FindBoost.cmake:1626 (message):
20:48:19   No header defined for python27; skipping header check
20:48:19 Call Stack (most recent call first):
20:48:19   /opt/ros/melodic/share/eigenpy/cmake/eigenpyConfig.cmake:142 (find_package)
20:48:19   CMakeLists.txt:50 (find_package)

Interestingly, the build farm proceeds without issues, but GHA issues the following linker errors when building moveit_servo:

Errors     << moveit_servo:make /home/runner/work/moveit/moveit/.work/target_ws/logs/moveit_servo/build.make.000.log
/home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_py_bindings_tools.so: undefined reference to `boost::python::throw_error_already_set()'
/home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_py_bindings_tools.so: undefined reference to `boost::python::converter::rvalue_from_python_stage1(_object*, boost::python::converter::registration const&)'
...

The corresponding linker command doesn't include libboost_python:

/usr/lib/ccache/clang++ -fPIC -Wall -Wextra -Wwrite-strings -Wunreachable-code -Wpointer-arith -Wredundant-decls -Wno-unused-parameter -Wno-unused-but-set-parameter -Wno-c++17-compat -Wno-overloaded-virtual -Wno-unused-function -O3 -DNDEBUG  -shared -Wl,-soname,libmoveit_py_bindings_tools.so.1.0.10 -o /home/runner/work/moveit/moveit/.work/target_ws/devel/.private/moveit_ros_planning_interface/lib/libmoveit_py_bindings_tools.so.1.0.10 CMakeFiles/moveit_py_bindings_tools.dir/src/roscpp_initializer.cpp.o -Wl,-rpath,/home/runner/work/moveit/moveit/.work/target_ws/install/lib:/opt/ros/melodic/lib:/home/runner/work/moveit/moveit/.work/upstream_ws/install/lib: /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_warehouse.so /opt/ros/melodic/lib/libwarehouse_ros.so /opt/ros/melodic/lib/libtf.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_pick_place_planner.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_move_group_capabilities_base.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_rdf_loader.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_kinematics_plugin_loader.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_robot_model_loader.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_constraint_sampler_manager_loader.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_planning_pipeline.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_trajectory_execution_manager.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_plan_execution.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_planning_scene_monitor.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_collision_plugin_loader.so /opt/ros/melodic/lib/libdynamic_reconfigure_config_init_mutex.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_ros_occupancy_map_monitor.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_exceptions.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_background_processing.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_kinematics_base.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_robot_model.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_transforms.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_robot_state.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_robot_trajectory.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_planning_interface.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_collision_detection.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_collision_detection_fcl.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_kinematic_constraints.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_planning_scene.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_constraint_samplers.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_planning_request_adapter.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_profiler.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_python_tools.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_trajectory_processing.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_distance_field.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_collision_distance_field.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_kinematics_metrics.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_dynamics_solver.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_utils.so /home/runner/work/moveit/moveit/.work/target_ws/install/lib/libmoveit_test_utils.so -lboost_iostreams -lfcl /opt/ros/melodic/lib/libkdl_parser.so /opt/ros/melodic/lib/liburdf.so -lurdfdom_sensor -lurdfdom_model_state -lurdfdom_model -lurdfdom_world /opt/ros/melodic/lib/librosconsole_bridge.so /opt/ros/melodic/lib/libsrdfdom.so -ltinyxml /home/runner/work/moveit/moveit/.work/upstream_ws/install/lib/libgeometric_shapes.so /opt/ros/melodic/lib/liboctomap.so /opt/ros/melodic/lib/liboctomath.so /opt/ros/melodic/lib/librandom_numbers.so /opt/ros/melodic/lib/libclass_loader.so -lPocoFoundation -ldl /opt/ros/melodic/lib/libroslib.so /opt/ros/melodic/lib/librospack.so -lpython2.7 -lboost_program_options -ltinyxml2 /opt/ros/melodic/lib/liborocos-kdl.so /opt/ros/melodic/lib/liborocos-kdl.so.1.4.0 /opt/ros/melodic/lib/libtf2_ros.so /opt/ros/melodic/lib/libmessage_filters.so /opt/ros/melodic/lib/libtf2.so /opt/ros/melodic/lib/libactionlib.so /opt/ros/melodic/lib/libroscpp.so -lboost_filesystem /opt/ros/melodic/lib/libxmlrpcpp.so /opt/ros/melodic/lib/libroscpp_serialization.so /opt/ros/melodic/lib/librosconsole.so /opt/ros/melodic/lib/librosconsole_log4cxx.so /opt/ros/melodic/lib/librosconsole_backend_interface.so -llog4cxx -lboost_regex /opt/ros/melodic/lib/librostime.so /opt/ros/melodic/lib/libcpp_common.so -lboost_system -lboost_thread -lboost_chrono -lboost_date_time -lboost_atomic -lpthread /usr/lib/x86_64-linux-gnu/libconsole_bridge.so.0.4 -lpython2.7 -lboost_program_options -ltinyxml2 /opt/ros/melodic/lib/liborocos-kdl.so /opt/ros/melodic/lib/liborocos-kdl.so.1.4.0 /opt/ros/melodic/lib/libtf2_ros.so /opt/ros/melodic/lib/libmessage_filters.so /opt/ros/melodic/lib/libtf2.so /opt/ros/melodic/lib/libactionlib.so /opt/ros/melodic/lib/libroscpp.so -lboost_filesystem /opt/ros/melodic/lib/libxmlrpcpp.so /opt/ros/melodic/lib/libroscpp_serialization.so /opt/ros/melodic/lib/librosconsole.so /opt/ros/melodic/lib/librosconsole_log4cxx.so /opt/ros/melodic/lib/librosconsole_backend_interface.so -llog4cxx -lboost_regex /opt/ros/melodic/lib/librostime.so /opt/ros/melodic/lib/libcpp_common.so -lboost_system -lboost_thread -lboost_chrono -lboost_date_time -lboost_atomic -lpthread /usr/lib/x86_64-linux-gnu/libconsole_bridge.so.0.4 

... while the build using eigenpy 2.7.5 did!

I'm still puzzled why the ROS build farm succeeds, but our GHA fails. I don't see a difference yet.
EDIT: I triggered a new build here, comparing the release vs. testing repositories as well as gcc vs. clang. This reveals:

@ros-discourse
Copy link

This pull request has been mentioned on ROS Discourse. There might be relevant details there:

https://discourse.ros.org/t/preparing-for-melodic-sync-2022-09-01/27180/2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
melodic Issue/PR is for the ROS 1 Melodic distribution
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants