jmichiels / arm

Robot arm simulation using Gazebo, ROS Control and MoveIt.
122 stars 24 forks source link

I have run into a error when I launch command catkin_make #5

Open zhangshuaiqing opened 1 year ago

zhangshuaiqing commented 1 year ago

[ 33%] Built target control_toolbox_generate_messages_lisp [ 33%] Built target dynamic_reconfigure_gencfg [ 33%] Built target dynamic_reconfigure_generate_messages_cpp [ 33%] Built target dynamic_reconfigure_generate_messages_eus Scanning dependencies of target dynamic_reconfigure_generate_messages_lisp Scanning dependencies of target arm_control_generate_messages_py Scanning dependencies of target arm_control_generate_messages_nodejs Scanning dependencies of target arm_control_generate_messages_lisp [ 33%] Built target dynamic_reconfigure_generate_messages_lisp [ 44%] Generating Python from MSG arm_control/Efforts [ 66%] Generating Lisp code from arm_control/Efforts.msg [ 66%] Generating Javascript code from arm_control/Efforts.msg [ 66%] Built target arm_control_generate_messages_nodejs [ 66%] Built target arm_control_generate_messages_cpp [ 66%] Built target arm_control_generate_messages_lisp [ 77%] Generating Python msg init.py for arm_control [ 77%] Built target arm_control_generate_messages_py [ 77%] Built target arm_control_generate_messages_eus Scanning dependencies of target arm_control_generate_messages Scanning dependencies of target arm_control [ 77%] Built target arm_control_generate_messages [ 88%] Building CXX object arm_control/CMakeFiles/arm_control.dir/src/joint_trajectory_controller.cpp.o In file included from /home/zsq/arm/src/arm_control/src/joint_trajectory_controller.cpp:1: /home/zsq/arm/src/arm_control/include/arm_control/effort_joint_interface.h:161:12: error: ‘scoped_ptr’ in namespace ‘boost’ does not name a template type; did you mean ‘shared_ptr’? 161 | boost::scoped_ptr publisher; | ^~~~~~ | shared_ptr /home/zsq/arm/src/arm_control/include/arm_control/effort_joint_interface.h:164:12: error: ‘scoped_ptr’ in namespace ‘boost’ does not name a template type; did you mean ‘shared_ptr’? 164 | boost::scoped_ptr id_solver; | ^~~~~~ | shared_ptr /home/zsq/arm/src/arm_control/include/arm_control/effort_joint_interface.h: In member function ‘bool HardwareInterfaceAdapter<hardware_interface::EffortJointInterface, joint_trajectory_controller::JointTrajectorySegment<trajectory_interface::QuinticSplineSegment >::State>::init(std::vector&, ros::NodeHandle&)’: /home/zsq/arm/src/arm_control/include/arm_control/effort_joint_interface.h:55:9: error: ‘publisher’ was not declared in this scope 55 | publisher.reset(new EffortsPublisher(nh, "efforts", 10)); | ^~~~~ /home/zsq/arm/src/arm_control/include/arm_control/effort_joint_interface.h:84:9: error: ‘id_solver’ was not declared in this scope 84 | id_solver.reset(new KDL::ChainIdSolver_RNE(chain, KDL::Vector(0, 0, -9.81))); | ^~~~~ /home/zsq/arm/src/arm_control/include/arm_control/effort_joint_interface.h: In member function ‘void HardwareInterfaceAdapter<hardware_interface::EffortJointInterface, joint_trajectory_controller::JointTrajectorySegment<trajectory_interface::QuinticSplineSegment >::State>::updateCommand(const ros::Time&, const ros::Duration&, const State&, const State&)’: /home/zsq/arm/src/arm_control/include/arm_control/effort_joint_interface.h:125:13: error: ‘id_solver’ was not declared in this scope 125 | if (id_solver->CartToJnt( | ^~~~~ /home/zsq/arm/src/arm_control/include/arm_control/effort_joint_interface.h:148:13: error: ‘publisher’ was not declared in this scope 148 | if (publisher->trylock()) { | ^~~~~ make[2]: [arm_control/CMakeFiles/arm_control.dir/build.make:63: arm_control/CMakeFiles/arm_control.dir/src/joint_trajectory_controller.cpp.o] Error 1 make[1]: [CMakeFiles/Makefile2:614: arm_control/CMakeFiles/arm_control.dir/all] Error 2 make: *** [Makefile:141: all] Error 2 Invoking "make -j8 -l8" failed

what should I do to fix this error

fmastro1 commented 10 months ago

in arm/src/include/arm_control/effort_joint_interface.h at rows 161 and 164 you have to replace "scoped_ptr" with "shared_ptr"

For me it's work