IFRA-Cranfield / ros2_RobotSimulation

ROS2.0 Foxy and Humble repositories which provide ready-to-use ROS2.0 Gazebo + MoveIt!2 simulation packages for different Industrial and Collaborative Robots.
Apache License 2.0
168 stars 46 forks source link

Colcon build Error 1 package failed: ros2_actions #19

Open TriKnight opened 1 year ago

TriKnight commented 1 year ago

I tried to clone branch humble and following your introduction, but when I built my workspace, I got the following error, even I added the move_group_interface_improved.h in /opt/ros/humble/include/moveit/move_group_interface.

--- stderr: ros2_actions
/usr/bin/ld: CMakeFiles/moveL_action.dir/scripts/moveL_action.cpp.o: in function `ActionServer::execute(std::shared_ptr<rclcpp_action::ServerGoalHandle<ros2_data::action::MoveL> >)':
moveL_action.cpp:(.text._ZN12ActionServer7executeESt10shared_ptrIN13rclcpp_action16ServerGoalHandleIN9ros2_data6action5MoveLEEEE[_ZN12ActionServer7executeESt10shared_ptrIN13rclcpp_action16ServerGoalHandleIN9ros2_data6action5MoveLEEEE]+0x55e): undefined reference to `moveit::planning_interface::MoveGroupInterface::execute(moveit_msgs::msg::RobotTrajectory_<std::allocator<void> > const&)'
collect2: error: ld returned 1 exit status
gmake[2]: *** [CMakeFiles/moveL_action.dir/build.make:364: moveL_action] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:261: CMakeFiles/moveL_action.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2
---
Failed   <<< ros2_actions [0.92s, exited with code 2]

Thanks for your support

amirobotic commented 1 year ago

I have the same issue with MoveL_action.

csharrock commented 11 months ago

am getting the same issue

yctros2 commented 10 months ago

I have the same problems。Has anyone solved this problem?

pbrandstet commented 7 months ago

Issue is still there. Can you please provide a fix? move_group_interface_improved.h doesn't exist in MoveIt2

yctros2 commented 7 months ago

this issue is still there,who solve it?

OmkarBharambe commented 6 months ago

README file in the include folder of the package says:

The original move_group_interface.h header file is included in the ~/opt/ros/foxy/include/moveit/move_group_interface folder in your Ubuntu 20.04 machine (if MoveIt!2 has been installed). This folder has restricted access, thus the following steps must be followed to paste the move_group_interface_improved.h file into that path:

  1. Install Nautilus Admin:
    sudo apt-get install nautilus-admin
  2. Once the installation finishes, Nautilus must be restarted:
    nautilus -q
  3. Open the ~/opt/ros/foxy/include/moveit/move_group_interface folder -> Right click -> Open as administrator.
  4. Paste the move_group_interface_improved.h file.
Shashank433 commented 6 months ago

After copying the code from move_group_interface_improved.h folder to the move_groupinterface.h folder, go to all the move.action.cpp files and edit this line of code "#include <moveit/move_group_interface/move_group_interface_improved.h>" into "#include <moveit/move_group_interface/move_group_interface.h>" this. Its in line 43. Then it builds the ros2_actions successfully