小鱼 ROS 2 新书上线!点击链接查看, 新书配套视频点击链接查看。
提问前必看的发帖注意事项—— 提问前必看!不符合要求的问题拒绝回答!!
社区使用指南—如何添加标签修改密码
C++ 编译 Action: /navigate_to_pose 报错
-
编译报错信息如下
: 第一条
-1: error: CMakeFiles/node_hunter_ros2_qt.dir/src/rclcomm.cpp.o: in function `rclcpp_action::Client<nav2_msgs::action::NavigateToPose>::SharedPtr rclcpp_action::create_client<nav2_msgs::action::NavigateToPose>(std::shared_ptrrclcpp::node_interfaces::NodeBaseInterface, std::shared_ptrrclcpp::node_interfaces::NodeGraphInterface, std::shared_ptrrclcpp::node_interfaces::NodeLoggingInterface, std::shared_ptrrclcpp::node_interfaces::NodeWaitablesInterface, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptrrclcpp::CallbackGroup, rcl_action_client_options_s const&)':
第二条:
error: undefined reference to `rosidl_action_type_support_t const* rosidl_typesupport_cpp::get_action_type_support_handle<nav2_msgs::action::NavigateToPose>()'
附截图:
CMakelist里包含了:
报错代码主要是:
……
#include <memory>
#include "rclcpp/rclcpp.hpp"
#include "std_msgs/msg/int32.hpp"
#include <geometry_msgs/msg/twist.hpp>
#include "geometry_msgs/msg/transform_stamped.hpp"
#include "tf2/exceptions.h"
#include "tf2_ros/transform_listener.h"
#include "tf2_ros/buffer.h"
#include "hunterdriver.h"
#include "nav2_msgs/action/navigate_to_pose.hpp"
#include "rclcpp_action/rclcpp_action.hpp"using NavigationAction = nav2_msgs::action::NavigateToPose;
using NavigationActionClient = rclcpp_action::Client<NavigationAction>;
using NavigationActionGoalHandle = rclcpp_action::ClientGoalHandle<NavigationAction>;NavigationActionClient::SharedPtr action_client_;
action_client_ =
rclcpp_action::create_client<NavigationAction>(
(rclcpp::Node*)(node.get()), "navigate_to_pose");
请问大佬,要改哪里? -
@小鱼 在 提问前必看!一定要看!必须看一下! 中说:
问题一定要描述清楚,终端打印一定复制粘贴,方便回答者检索和引用(你可以在linux系统上打开浏览器进社区)
基本的Markdown语法一定要学习下,有的小伙伴图片代码一团糟
提问时一定要提供尽可能多的信息(系统版本,ROS版本,前后操作,终端日志),包括你的目的,比如你其实想装装某个库遇到问题,不要只说这个问题,因为可能有更好的替代方案
先搜索再提问,很多问题其实都有解决方案,确保你自己对自己的问题有一定了解再提问
尽量一句话说完,不要把社区当微信聊天一样用,每一个回复都尽量提供更多的的信息。 -
@65198054
找到问题了
应该用nav2_msgs 而不是 nav_msgs