@yudonghou123 侯总我爱你!!!
不过我又遇到了下面的问题
Starting >>> plankton_utils
Starting >>> uuv_gazebo_ros_plugins_msgs
Starting >>> uuv_gazebo_plugins
Starting >>> uuv_control_msgs
Finished <<< uuv_gazebo_plugins [1.73s]
Starting >>> uuv_sensor_ros_plugins_msgs
Finished <<< uuv_gazebo_ros_plugins_msgs [3.93s]
Starting >>> uuv_world_ros_plugins_msgs
Finished <<< uuv_sensor_ros_plugins_msgs [2.76s]
Starting >>> uuv_world_plugins
Finished <<< uuv_world_plugins [0.49s]
Starting >>> uuv_gazebo_ros_plugins
Finished <<< plankton_utils [5.77s]
Starting >>> uuv_assistants
Finished <<< uuv_control_msgs [7.19s]
Starting >>> uuv_sensor_ros_plugins
Finished <<< uuv_world_ros_plugins_msgs [4.63s]
Starting >>> uuv_gazebo
Finished <<< uuv_gazebo [0.48s]
Starting >>> uuv_gazebo_worlds
Finished <<< uuv_gazebo_worlds [0.65s]
Starting >>> uuv_auv_control_allocator
Finished <<< uuv_auv_control_allocator [4.49s]
Starting >>> uuv_control_cascaded_pid
Finished <<< uuv_control_cascaded_pid [1.80s]
Starting >>> uuv_world_ros_plugins
--- stderr: uuv_gazebo_ros_plugins
In file included from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/include/uuv_gazebo_ros_plugins/FinROSPlugin.h:31,
from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/src/FinROSPlugin.cpp:22:
/opt/ros/humble/include/gazebo_ros/node.hpp:144:19: error: ‘Executor’ was not declared in this scope; did you mean ‘rclcpp::Executor’?
144 | std::shared_ptr<Executor> executor_;
| ^~~~~~~~
| rclcpp::Executor
In file included from /opt/ros/humble/include/rclcpp/rclcpp/executors/multi_threaded_executor.hpp:25,
from /opt/ros/humble/include/rclcpp/rclcpp/executors.hpp:21,
from /opt/ros/humble/include/rclcpp/rclcpp/rclcpp.hpp:155,
from /opt/ros/humble/include/gazebo_ros/node.hpp:18,
from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/include/uuv_gazebo_ros_plugins/FinROSPlugin.h:31,
from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/src/FinROSPlugin.cpp:22:
/opt/ros/humble/include/rclcpp/rclcpp/executor.hpp:65:7: note: ‘rclcpp::Executor’ declared here
65 | class Executor
| ^~~~~~~~
In file included from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/include/uuv_gazebo_ros_plugins/FinROSPlugin.h:31,
from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/src/FinROSPlugin.cpp:22:
/opt/ros/humble/include/gazebo_ros/node.hpp:144:27: error: template argument 1 is invalid
144 | std::shared_ptr<Executor> executor_;
| ^
/opt/ros/humble/include/gazebo_ros/node.hpp:156:24: error: ‘Executor’ was not declared in this scope; did you mean ‘rclcpp::Executor’?
156 | static std::weak_ptr<Executor> static_executor_;
| ^~~~~~~~
| rclcpp::Executor
In file included from /opt/ros/humble/include/rclcpp/rclcpp/executors/multi_threaded_executor.hpp:25,
from /opt/ros/humble/include/rclcpp/rclcpp/executors.hpp:21,
from /opt/ros/humble/include/rclcpp/rclcpp/rclcpp.hpp:155,
from /opt/ros/humble/include/gazebo_ros/node.hpp:18,
from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/include/uuv_gazebo_ros_plugins/FinROSPlugin.h:31,
from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/src/FinROSPlugin.cpp:22:
/opt/ros/humble/include/rclcpp/rclcpp/executor.hpp:65:7: note: ‘rclcpp::Executor’ declared here
65 | class Executor
| ^~~~~~~~
In file included from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/include/uuv_gazebo_ros_plugins/FinROSPlugin.h:31,
from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/src/FinROSPlugin.cpp:22:
/opt/ros/humble/include/gazebo_ros/node.hpp:156:32: error: template argument 1 is invalid
156 | static std::weak_ptr<Executor> static_executor_;
| ^
/opt/ros/humble/include/gazebo_ros/node.hpp: In static member function ‘static gazebo_ros::Node::SharedPtr gazebo_ros::Node::CreateWithArgs(Args&& ...)’:
/opt/ros/humble/include/gazebo_ros/node.hpp:182:38: error: request for member ‘lock’ in ‘gazebo_ros::Node::static_executor_’, which is of non-class type ‘int’
182 | node->executor_ = static_executor_.lock();
| ^~~~
/opt/ros/humble/include/gazebo_ros/node.hpp:186:40: error: ‘Executor’ was not declared in this scope; did you mean ‘rclcpp::Executor’?
186 | node->executor_ = std::make_shared<Executor>();
| ^~~~~~~~
| rclcpp::Executor
In file included from /opt/ros/humble/include/rclcpp/rclcpp/executors/multi_threaded_executor.hpp:25,
from /opt/ros/humble/include/rclcpp/rclcpp/executors.hpp:21,
from /opt/ros/humble/include/rclcpp/rclcpp/rclcpp.hpp:155,
from /opt/ros/humble/include/gazebo_ros/node.hpp:18,
from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/include/uuv_gazebo_ros_plugins/FinROSPlugin.h:31,
from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/src/FinROSPlugin.cpp:22:
/opt/ros/humble/include/rclcpp/rclcpp/executor.hpp:65:7: note: ‘rclcpp::Executor’ declared here
65 | class Executor
| ^~~~~~~~
In file included from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/include/uuv_gazebo_ros_plugins/FinROSPlugin.h:31,
from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/src/FinROSPlugin.cpp:22:
/opt/ros/humble/include/gazebo_ros/node.hpp:225:18: error: base operand of ‘->’ is not a pointer
225 | node->executor_->add_node(node);
| ^~
In file included from /opt/ros/humble/include/rclcpp/rclcpp/logging.hpp:24,
from /opt/ros/humble/include/rclcpp/rclcpp/client.hpp:40,
from /opt/ros/humble/include/rclcpp/rclcpp/callback_group.hpp:23,
from /opt/ros/humble/include/rclcpp/rclcpp/any_executable.hpp:20,
from /opt/ros/humble/include/rclcpp/rclcpp/memory_strategy.hpp:25,
from /opt/ros/humble/include/rclcpp/rclcpp/memory_strategies.hpp:18,
from /opt/ros/humble/include/rclcpp/rclcpp/executor_options.hpp:20,
from /opt/ros/humble/include/rclcpp/rclcpp/executor.hpp:37,
from /opt/ros/humble/include/rclcpp/rclcpp/executors/multi_threaded_executor.hpp:25,
from /opt/ros/humble/include/rclcpp/rclcpp/executors.hpp:21,
from /opt/ros/humble/include/rclcpp/rclcpp/rclcpp.hpp:155,
from /opt/ros/humble/include/gazebo_ros/node.hpp:18,
from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/include/uuv_gazebo_ros_plugins/FinROSPlugin.h:31,
from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/src/FinROSPlugin.cpp:22:
/home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/src/FinROSPlugin.cpp: In member function ‘virtual void uuv_simulator_ros::FinROSPlugin::Load(gazebo::physics::ModelPtr, sdf::v9::ElementPtr)’:
/home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/src/FinROSPlugin.cpp:122:69: error: cannot convert ‘std::__cxx11::basic_string<char>’ to ‘const char*’
122 | CLCPP_INFO(myRosNode->get_logger(), "[FinROSPlugin] Namespace: " + std::string(myRosNode->get_namespace()));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| |
| std::__cxx11::basic_string<char>
In file included from /opt/ros/humble/include/rmw/rmw/types.h:28,
from /opt/ros/humble/include/rcl/rcl/types.h:20,
from /opt/ros/humble/include/rcl/rcl/log_level.h:22,
from /opt/ros/humble/include/rcl/rcl/arguments.h:21,
from /opt/ros/humble/include/rcl/rcl/context.h:28,
from /opt/ros/humble/include/rcl/rcl/guard_condition.h:26,
from /opt/ros/humble/include/rclcpp/rclcpp/executor.hpp:30,
from /opt/ros/humble/include/rclcpp/rclcpp/executors/multi_threaded_executor.hpp:25,
from /opt/ros/humble/include/rclcpp/rclcpp/executors.hpp:21,
from /opt/ros/humble/include/rclcpp/rclcpp/rclcpp.hpp:155,
from /opt/ros/humble/include/gazebo_ros/node.hpp:18,
from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/include/uuv_gazebo_ros_plugins/FinROSPlugin.h:31,
from /home/hao/Plankton-master/uuv_gazebo_plugins/uuv_gazebo_ros_plugins/src/FinROSPlugin.cpp:22:
/opt/ros/humble/include/rcutils/rcutils/logging.h:479:16: note: initializing argument 4 of ‘void rcutils_log(const rcutils_log_location_t*, int, const char*, const char*, ...)’
479 | const char * format,
| ~~~~~~~~~~~~~^~~~~~
gmake[2]: *** [CMakeFiles/uuv_fin_ros_plugin.dir/build.make:76: CMakeFiles/uuv_fin_ros_plugin.dir/src/FinROSPlugin.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:149: CMakeFiles/uuv_fin_ros_plugin.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2
---
Failed <<< uuv_gazebo_ros_plugins [29.4s, exited with code 2]
Aborted <<< uuv_assistants [31.5s]
Aborted <<< uuv_sensor_ros_plugins [30.5s]
Aborted <<< uuv_world_ros_plugins [21.9s]
Summary: 11 packages finished [38.2s]
1 package failed: uuv_gazebo_ros_plugins
3 packages aborted: uuv_assistants uuv_sensor_ros_plugins uuv_world_ros_plugins
4 packages had stderr output: uuv_assistants uuv_gazebo_ros_plugins uuv_sensor_ros_plugins uuv_world_ros_plugins
7 packages not processed
个人感觉应该是路径问题?不知道该如何下手去改了
希望您不吝赐教!