报错:
/usr/bin/ld: CMakeFiles/dh_gripper_driver.dir/src/move_robot.cpp.o: in function `MoveItIkDemo::callback(boost::shared_ptr<geometry_msgs::Point_<std::allocator<void> > const> const&)':
/home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:76: undefined reference to `moveit::planning_interface::MoveGroupInterface::setStartStateToCurrentState()'
/usr/bin/ld: /home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:77: undefined reference to `moveit::planning_interface::MoveGroupInterface::setPoseTarget(geometry_msgs::Pose_<std::allocator<void> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:79: undefined reference to `moveit::planning_interface::MoveGroupInterface::plan(moveit::planning_interface::MoveGroupInterface::Plan&)'
/usr/bin/ld: /home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:82: undefined reference to `moveit::planning_interface::MoveGroupInterface::move()'
/usr/bin/ld: CMakeFiles/dh_gripper_driver.dir/src/move_robot.cpp.o: in function `MoveItIkDemo::~MoveItIkDemo()':
/home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:24: undefined reference to `moveit::planning_interface::MoveGroupInterface::~MoveGroupInterface()'
/usr/bin/ld: CMakeFiles/dh_gripper_driver.dir/src/move_robot.cpp.o: in function `MoveItIkDemo::MoveItIkDemo()':
/home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:28: undefined reference to `moveit::planning_interface::MoveGroupInterface::MoveGroupInterface(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<tf2_ros::Buffer> const&, ros::WallDuration const&)'
/usr/bin/ld: /home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:34: undefined reference to `moveit::planning_interface::MoveGroupInterface::setPoseReferenceFrame(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:37: undefined reference to `moveit::planning_interface::MoveGroupInterface::allowReplanning(bool)'
/usr/bin/ld: /home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:40: undefined reference to `moveit::planning_interface::MoveGroupInterface::setGoalPositionTolerance(double)'
/usr/bin/ld: /home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:41: undefined reference to `moveit::planning_interface::MoveGroupInterface::setGoalOrientationTolerance(double)'
/usr/bin/ld: /home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:44: undefined reference to `moveit::planning_interface::MoveGroupInterface::setMaxAccelerationScalingFactor(double)'
/usr/bin/ld: /home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:45: undefined reference to `moveit::planning_interface::MoveGroupInterface::setMaxVelocityScalingFactor(double)'
/usr/bin/ld: /home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:49: undefined reference to `moveit::planning_interface::MoveGroupInterface::setJointValueTarget(std::vector<double, std::allocator<double> > const&)'
/usr/bin/ld: /home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:50: undefined reference to `moveit::planning_interface::MoveGroupInterface::move()'
/usr/bin/ld: /home/min/yolov10_gripper/src/dh_gripper_driver/src/move_robot.cpp:28: undefined reference to `moveit::planning_interface::MoveGroupInterface::~MoveGroupInterface()'
collect2: error: ld returned 1 exit status
修改错误
在CMakeLists.txt中加如下代码
find_package(catkin REQUIRED COMPONENTS
roscpp
moveit_core
moveit_ros_planning
moveit_ros_planning_interface
tf2_geometry_msgs
tf2_ros
)
catkin_package(
CATKIN_DEPENDS
roscpp
moveit_core
moveit_ros_planning
moveit_ros_planning_interface
tf2_geometry_msgs
tf2_ros
)
修改package.xml文件
<build_depend>moveit_core</build_depend>
<build_depend>moveit_ros_planning</build_depend>
<build_depend>moveit_ros_planning_interface</build_depend>
<exec_depend>moveit_core</exec_depend>
<exec_depend>moveit_ros_planning</exec_depend>
<exec_depend>moveit_ros_planning_interface</exec_depend>