colcon build moveit2 failure because of moveit_ros_warehouse collect2 error
I'm building moveit2 from this tutorial: moveit2_tutorials.picknik.ai/doc/getting_started/getting_started.html
I'm on Ubuntu 20.04 and my ros2 version is foxy, which was built from debian. Rosdep returns all rosdeps installed successfully and moveit2's repos have been successfully cloned.
I'm getting this when building:
--- stderr: moveit_ros_warehouse /usr/bin/ld: libmoveit_warehouse.so.: undefined reference to `MD5' collect2: error: ld returned 1 exit status
Here is the code from colcon build:
:~/robotics/moveo_ws/ws$ colcon build --event-handlers desktop_notification- status- >--cmake-args -DCMAKE_BUILD_TYPE=Release
Starting >>> geometric_shapes [Processing: geometric_shapes] [Processing: geometric_shapes] [Processing: geometric_shapes] [Processing: geometric_shapes] Finished <<< geometric_shapes [2min 1s] Starting >>> moveit_msgs Finished <<< moveit_msgs [7.18s] Starting >>> srdfdom Finished <<< srdfdom [0.52s] Starting >>> moveit_common Finished <<< moveit_common [0.27s] Starting >>> controller_manager_msgs Finished <<< controller_manager_msgs [2.03s] Starting >>> ros2_control_test_assets Finished <<< ros2_control_test_assets [0.25s] Starting >>> hardware_interface Finished <<< hardware_interface [0.98s] Starting >>> controller_interface Finished <<< controller_interface [0.66s] Starting >>> controller_manager Finished <<< controller_manager [1.18s] Starting >>> warehouse_ros Finished <<< warehouse_ros [0.45s] Starting >>> moveit_resources_panda_description Finished <<< moveit_resources_panda_description [0.26s] Starting >>> moveit_resources_panda_moveit_config Finished <<< moveit_resources_panda_moveit_config [0.28s] Starting >>> moveit_resources_fanuc_description Finished <<< moveit_resources_fanuc_description [0.26s] Starting >>> moveit_resources_fanuc_moveit_config Finished <<< moveit_resources_fanuc_moveit_config [0.27s] Starting >>> forward_command_controller Finished <<< forward_command_controller [0.63s] Starting >>> moveit_resources_pr2_description Finished <<< moveit_resources_pr2_description [0.30s] Starting >>> moveit_core Finished <<< moveit_core [4.59s] Starting >>> moveit_ros_occupancy_map_monitor Finished <<< moveit_ros_occupancy_map_monitor [0.48s] Starting >>> moveit_ros_planning Finished <<< moveit_ros_planning [2.06s] Starting >>> moveit_kinematics Finished <<< moveit_kinematics [0.98s] Starting >>> moveit_ros_warehouse --- stderr: moveit_ros_warehouse /usr/bin/ld: libmoveit_warehouse.so.: undefined reference to `MD5' collect2: error: ld returned 1 exit status make[2]: * [warehouse/CMakeFiles/moveit_warehouse_broadcast.dir/build.make:346: warehouse/moveit_warehouse_broadcast] Error 1 make[1]: [CMakeFiles/Makefile2:189: warehouse/CMakeFiles/moveit_warehouse_broadcast.dir/all] Error 2 make: ** [Makefile:141: all] Error 2
Failed <<< moveit_ros_warehouse [1.37s, exited with code 2]
Summary: 20 packages finished [2min 27s] 1 package failed: moveit_ros_warehouse 1 package had stderr output: moveit_ros_warehouse 33 packages not processed
I see this and look closer at ws/build/moveit_ros_warehouse/CMakeFiles and cat CMakeError.log. Here is the cat:
Performing C SOURCE FILE Test CMAKE_HAVE_LIBC_PTHREAD failed with the >following output: Change Dir: /home/forrest/robotics/moveo_ws/ws/build/moveit_ros_warehouse/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make cmTC_6c77e/fast && /usr/bin/make -f CMakeFiles/cmTC_6c77e.dir /build.make CMakeFiles/cmTC_6c77e.dir/build make[1]: Entering directory '/home/forrest/robotics/moveo_ws/ws/build/moveit_ros_warehouse/CMakeFile/CMakeTmp' Building C object CMakeFiles/cmTC_6c77e.dir/src.c.o /usr/bin/cc -DCMAKE_HAVE_LIBC_PTHREAD -o CMakeFiles/cmTC_6c77e.dir/src.c.o -c /home/forrest/robotics/moveo_ws/ws/build/moveit_ros_warehouse/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_6c77e /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_6c77e.dir/link.txt --verbose=1 /usr/bin/cc -DCMAKE_HAVE_LIBC_PTHREAD CMakeFiles/cmTC_6c77e.dir/src.c.o -o cmTC_6c77e /usr/bin/ld: CMakeFiles/cmTC_6c77e.dir/src.c.o: in function
main': src.c:(.text+0x46): undefined reference to
pthread_create' /usr/bin/ld: src.c:(.text ...