moveit / moveit_task_constructor

A hierarchical multi-stage manipulation planner
https://moveit.github.io/moveit_task_constructor
BSD 3-Clause "New" or "Revised" License
178 stars 150 forks source link

moveit_configs_utils is missing #368

Closed samiulextreem closed 2 years ago

samiulextreem commented 2 years ago

I am trying to install moveit_task_constructor in my workspace of ros 2 foxy. But so far i have met with failure. I have run the following command cd src git clone https://github.com/ros-planning/moveit_task_constructor.git -b ros2 vcs import < moveit_task_constructor/.repos cd .. colcon build --packages-select moveit_task_constructor

But it throws a bunch of error.

When i run rosdep install -r --from-paths . --ignore-src --rosdistro $ROS_DISTRO -y from src it reports missing dependency moveit_config_utils which i can not find anywhere. Can anybody help me explaining this problem?

JafarAbdi commented 2 years ago

Hi @samiulextreem,

ros2 branch doesn't support foxy, you should be able to compile https://github.com/ros-planning/moveit_task_constructor/tree/galactic in foxy

Please reach out to me if you run into any issue

samiulextreem commented 2 years ago

Hi @JafarAbdi

I cloned the galactic branch and run the rosdep. It does not throws any problem. But when I try to build the package, It did not build. The error is given below

Starting >>> moveit_task_constructor_msgs
Starting >>> rviz_marker_tools
Starting >>> rviz_visual_tools
Starting >>> rosparam_shortcuts
Finished <<< rviz_marker_tools [0.77s]                                                
Finished <<< rosparam_shortcuts [0.95s]                                               
Finished <<< rviz_visual_tools [1.31s]                                                 
Starting >>> moveit_visual_tools
Finished <<< moveit_task_constructor_msgs [1.68s]                                   
Starting >>> moveit_task_constructor_core
Finished <<< moveit_visual_tools [0.57s]                                                                     
Starting >>> moveit2_tutorials
Finished <<< moveit2_tutorials [1.05s]                                                
--- stderr: moveit_task_constructor_core                                
In file included from /opt/ros/foxy/include/rclcpp/node.hpp:1224,
                 from /home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/include/moveit/task_constructor/solvers/pipeline_planner.h:42,
                 from /home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:39:
/opt/ros/foxy/include/rclcpp/node_impl.hpp: In instantiation of ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]’:
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/node_impl.hpp:169:23: error: no matching function for call to ‘rclcpp::ParameterValue::get<rclcpp::ParameterType>() const’
     ).get<ParameterT>();
                       ^
In file included from /opt/ros/foxy/include/rclcpp/parameter.hpp:26,
                 from /opt/ros/foxy/include/rclcpp/node_interfaces/node_parameters_interface.hpp:28,
                 from /opt/ros/foxy/include/rclcpp/node.hpp:51,
                 from /home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/include/moveit/task_constructor/solvers/pipeline_planner.h:42,
                 from /home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:39:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:148:3: note: candidate: ‘template<rclcpp::ParameterType type> constexpr typename std::enable_if<(type == PARAMETER_BOOL), const bool&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:148:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:159:3: note: candidate: ‘template<rclcpp::ParameterType type> constexpr typename std::enable_if<(type == PARAMETER_INTEGER), const long int&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:159:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:170:3: note: candidate: ‘template<rclcpp::ParameterType type> constexpr typename std::enable_if<(type == PARAMETER_DOUBLE), const double&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:170:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:181:3: note: candidate: ‘template<rclcpp::ParameterType type> constexpr typename std::enable_if<(type == PARAMETER_STRING), const std::__cxx11::basic_string<char>&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:181:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:193:3: note: candidate: ‘template<rclcpp::ParameterType type> constexpr typename std::enable_if<(type == PARAMETER_BYTE_ARRAY), const std::vector<unsigned char, std::allocator<unsigned char> >&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:193:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:205:3: note: candidate: ‘template<rclcpp::ParameterType type> constexpr typename std::enable_if<(type == PARAMETER_BOOL_ARRAY), const std::vector<bool, std::allocator<bool> >&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:205:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:217:3: note: candidate: ‘template<rclcpp::ParameterType type> constexpr typename std::enable_if<(type == PARAMETER_INTEGER_ARRAY), const std::vector<long int, std::allocator<long int> >&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:217:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:229:3: note: candidate: ‘template<rclcpp::ParameterType type> constexpr typename std::enable_if<(type == PARAMETER_DOUBLE_ARRAY), const std::vector<double, std::allocator<double> >&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:229:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:241:3: note: candidate: ‘template<rclcpp::ParameterType type> constexpr typename std::enable_if<(type == PARAMETER_STRING_ARRAY), const std::vector<std::__cxx11::basic_string<char> >&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:241:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:254:3: note: candidate: ‘template<class type> constexpr typename std::enable_if<std::is_same<T, bool>::value, const bool&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:254:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp: In substitution of ‘template<class type> constexpr typename std::enable_if<std::is_same<T, bool>::value, const bool&>::type rclcpp::ParameterValue::get() const [with type = rclcpp::ParameterType]’:
/opt/ros/foxy/include/rclcpp/node_impl.hpp:169:23:   required from ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:254:3: error: no type named ‘type’ in ‘struct std::enable_if<false, const bool&>’
/opt/ros/foxy/include/rclcpp/node_impl.hpp: In instantiation of ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]’:
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:263:3: note: candidate: ‘template<class type> constexpr typename std::enable_if<(std::is_integral<_Tp>::value && (! std::is_same<T, bool>::value)), const long int&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:263:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp: In substitution of ‘template<class type> constexpr typename std::enable_if<(std::is_integral<_Tp>::value && (! std::is_same<T, bool>::value)), const long int&>::type rclcpp::ParameterValue::get() const [with type = rclcpp::ParameterType]’:
/opt/ros/foxy/include/rclcpp/node_impl.hpp:169:23:   required from ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:263:3: error: no type named ‘type’ in ‘struct std::enable_if<false, const long int&>’
/opt/ros/foxy/include/rclcpp/node_impl.hpp: In instantiation of ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]’:
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:271:3: note: candidate: ‘template<class type> constexpr typename std::enable_if<std::is_floating_point<_Tp>::value, const double&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:271:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp: In substitution of ‘template<class type> constexpr typename std::enable_if<std::is_floating_point<_Tp>::value, const double&>::type rclcpp::ParameterValue::get() const [with type = rclcpp::ParameterType]’:
/opt/ros/foxy/include/rclcpp/node_impl.hpp:169:23:   required from ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:271:3: error: no type named ‘type’ in ‘struct std::enable_if<false, const double&>’
/opt/ros/foxy/include/rclcpp/node_impl.hpp: In instantiation of ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]’:
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:279:3: note: candidate: ‘template<class type> constexpr typename std::enable_if<std::is_convertible<type, std::__cxx11::basic_string<char> >::value, const std::__cxx11::basic_string<char>&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:279:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp: In substitution of ‘template<class type> constexpr typename std::enable_if<std::is_convertible<type, std::__cxx11::basic_string<char> >::value, const std::__cxx11::basic_string<char>&>::type rclcpp::ParameterValue::get() const [with type = rclcpp::ParameterType]’:
/opt/ros/foxy/include/rclcpp/node_impl.hpp:169:23:   required from ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:279:3: error: no type named ‘type’ in ‘struct std::enable_if<false, const std::__cxx11::basic_string<char>&>’
/opt/ros/foxy/include/rclcpp/node_impl.hpp: In instantiation of ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]’:
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:289:3: note: candidate: ‘template<class type> constexpr typename std::enable_if<std::is_convertible<type, const std::vector<unsigned char, std::allocator<unsigned char> >&>::value, const std::vector<unsigned char, std::allocator<unsigned char> >&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:289:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp: In substitution of ‘template<class type> constexpr typename std::enable_if<std::is_convertible<type, const std::vector<unsigned char, std::allocator<unsigned char> >&>::value, const std::vector<unsigned char, std::allocator<unsigned char> >&>::type rclcpp::ParameterValue::get() const [with type = rclcpp::ParameterType]’:
/opt/ros/foxy/include/rclcpp/node_impl.hpp:169:23:   required from ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:289:3: error: no type named ‘type’ in ‘struct std::enable_if<false, const std::vector<unsigned char, std::allocator<unsigned char> >&>’
/opt/ros/foxy/include/rclcpp/node_impl.hpp: In instantiation of ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]’:
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:299:3: note: candidate: ‘template<class type> constexpr typename std::enable_if<std::is_convertible<type, const std::vector<bool, std::allocator<bool> >&>::value, const std::vector<bool, std::allocator<bool> >&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:299:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp: In substitution of ‘template<class type> constexpr typename std::enable_if<std::is_convertible<type, const std::vector<bool, std::allocator<bool> >&>::value, const std::vector<bool, std::allocator<bool> >&>::type rclcpp::ParameterValue::get() const [with type = rclcpp::ParameterType]’:
/opt/ros/foxy/include/rclcpp/node_impl.hpp:169:23:   required from ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:299:3: error: no type named ‘type’ in ‘struct std::enable_if<false, const std::vector<bool, std::allocator<bool> >&>’
/opt/ros/foxy/include/rclcpp/node_impl.hpp: In instantiation of ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]’:
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:309:3: note: candidate: ‘template<class type> constexpr typename std::enable_if<std::is_convertible<type, const std::vector<long int, std::allocator<long int> >&>::value, const std::vector<long int, std::allocator<long int> >&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:309:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp: In substitution of ‘template<class type> constexpr typename std::enable_if<std::is_convertible<type, const std::vector<long int, std::allocator<long int> >&>::value, const std::vector<long int, std::allocator<long int> >&>::type rclcpp::ParameterValue::get() const [with type = rclcpp::ParameterType]’:
/opt/ros/foxy/include/rclcpp/node_impl.hpp:169:23:   required from ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:309:3: error: no type named ‘type’ in ‘struct std::enable_if<false, const std::vector<long int, std::allocator<long int> >&>’
/opt/ros/foxy/include/rclcpp/node_impl.hpp: In instantiation of ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]’:
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:319:3: note: candidate: ‘template<class type> constexpr typename std::enable_if<std::is_convertible<type, const std::vector<double, std::allocator<double> >&>::value, const std::vector<double, std::allocator<double> >&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:319:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp: In substitution of ‘template<class type> constexpr typename std::enable_if<std::is_convertible<type, const std::vector<double, std::allocator<double> >&>::value, const std::vector<double, std::allocator<double> >&>::type rclcpp::ParameterValue::get() const [with type = rclcpp::ParameterType]’:
/opt/ros/foxy/include/rclcpp/node_impl.hpp:169:23:   required from ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:319:3: error: no type named ‘type’ in ‘struct std::enable_if<false, const std::vector<double, std::allocator<double> >&>’
/opt/ros/foxy/include/rclcpp/node_impl.hpp: In instantiation of ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]’:
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:329:3: note: candidate: ‘template<class type> constexpr typename std::enable_if<std::is_convertible<type, const std::vector<std::__cxx11::basic_string<char> >&>::value, const std::vector<std::__cxx11::basic_string<char> >&>::type rclcpp::ParameterValue::get() constget() const
   ^~~
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:329:3: note:   template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/parameter_value.hpp: In substitution of ‘template<class type> constexpr typename std::enable_if<std::is_convertible<type, const std::vector<std::__cxx11::basic_string<char> >&>::value, const std::vector<std::__cxx11::basic_string<char> >&>::type rclcpp::ParameterValue::get() const [with type = rclcpp::ParameterType]’:
/opt/ros/foxy/include/rclcpp/node_impl.hpp:169:23:   required from ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = rclcpp::ParameterType; std::__cxx11::string = std::__cxx11::basic_string<char>; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor_<std::allocator<void> >]/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/solvers/pipeline_planner.cpp:92:82:   required from here
/opt/ros/foxy/include/rclcpp/parameter_value.hpp:329:3: error: no type named ‘type’ in ‘struct std::enable_if<false, const std::vector<std::__cxx11::basic_string<char> >&>/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/container.cpp: In function ‘void moveit::task_constructor::printChildrenInterfaces(const moveit::task_constructor::ContainerBase&, bool, const moveit::task_constructor::Stage&, std::ostream&)’:
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/container.cpp:391:14: error: setw’ is not a member of ‘std’
   os << std::setw(width) << std::left << child->name();
              ^~~~
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/container.cpp:391:14: note: suggested alternative: ‘set’
   os << std::setw(width) << std::left << child->name();
              ^~~~
              set
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/container.cpp:397:15: error: setw’ is not a member of ‘std’
    os << std::setw(width) << "  ";
               ^~~~
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/container.cpp:397:15: note: suggested alternative: ‘set’
    os << std::setw(width) << "  ";
               ^~~~
               set
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/stage.cpp: In member function ‘virtual bool moveit::task_constructor::Connecting::compatible(const moveit::task_constructor::InterfaceState&, const moveit::task_constructor::InterfaceState&) const’:
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/stage.cpp:828:22: error: using element_type = struct collision_detection::World::Object’ {aka ‘struct collision_detection::World::Object’} has no member named ‘pose_’
   if (!(from_object->pose_.matrix() - to_object->pose_.matrix()).isZero(1e-4)) {
                      ^~~~~
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/stage.cpp:828:50: error: using element_type = const struct collision_detection::World::Object’ {aka ‘const struct collision_detection::World::Object’} has no member named ‘pose_’
   if (!(from_object->pose_.matrix() - to_object->pose_.matrix()).isZero(1e-4)) {
                                                  ^~~~~
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/stage.cpp:880:31: error: const class moveit::core::AttachedBody’ has no member named ‘getShapePosesInLinkFrame’
   auto from_it = from_object->getShapePosesInLinkFrame().cbegin();
                               ^~~~~~~~~~~~~~~~~~~~~~~~
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/stage.cpp:881:32: error: const class moveit::core::AttachedBody’ has no member named ‘getShapePosesInLinkFrame’
   auto from_end = from_object->getShapePosesInLinkFrame().cend();
                                ^~~~~~~~~~~~~~~~~~~~~~~~
/home/samiul/Documents/ros_arm/src/moveit_task_constructor/core/src/stage.cpp:882:27: error: const class moveit::core::AttachedBody’ has no member named ‘getShapePosesInLinkFrame’
   auto to_it = to_object->getShapePosesInLinkFrame().cbegin();
                           ^~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [src/CMakeFiles/moveit_task_constructor_core.dir/build.make:141: src/CMakeFiles/moveit_task_constructor_core.dir/stage.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [src/CMakeFiles/moveit_task_constructor_core.dir/build.make:63: src/CMakeFiles/moveit_task_constructor_core.dir/container.cpp.o] Error 1
make[2]: *** [src/CMakeFiles/moveit_task_constructor_core.dir/build.make:219: src/CMakeFiles/moveit_task_constructor_core.dir/solvers/pipeline_planner.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:262: src/CMakeFiles/moveit_task_constructor_core.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
---
Failed   <<< moveit_task_constructor_core [12.2s, exited with code 2]

Summary: 6 packages finished [14.2s]
  1 package failed: moveit_task_constructor_core
  1 package had stderr output: moveit_task_constructor_core
  3 packages not processed

I also want to mention that running vcs import < moveit_task_constructor/.repos line, it clone rosparam_shortcuts package which also throws error. So I cloned rosparam_shortcuts 's foxy branch and compiled them.

JafarAbdi commented 2 years ago

Can you try using https://github.com/PickNikRobotics/rosparam_shortcuts/tree/foxy rather than ros2 branch and see if it resolves the issue for you?

samiulextreem commented 2 years ago

Hi @JafarAbdi

I indeed using foxy branch of rosparam_shortcuts rather than ros2 branch. ros2 branch does not compile with ros2 foxy distro.

samiulextreem commented 2 years ago

Hi @JafarAbdi Now i have taken a look at ros 2 foxy doc, i have not found anything related to moveit_test_constructor. Can you confirm that this package indeed made to run on foxy instead of humble?

JafarAbdi commented 2 years ago

I'm sorry, after looking at it again, I found out that we didn't support foxy for MTC, the minimal supported version is galactic