-
Notifications
You must be signed in to change notification settings - Fork 36
Description
Preliminary Checks
- This issue is not a duplicate. Before opening a new issue, please search existing issues.
- This issue is not a question, feature request, or anything other than a bug report directly related to this project.
Description
When building the zed-ros2 from the stereolabs ros2 fork, it results in a build failure due to wrongly updated method overloads and several other minor issues.
Opening this issue to see if it's a common issue as I've found a workaround fork here. If it's reproducible I'll add in a PR to mention this fork in the tutorial.
Steps to Reproduce
Follow zed_robot_integration steps in Install the dependencies.
cd <ros2_workspace>/src
git clone https://github.com/stereolabs/scout_ros2.git
git clone https://github.com/westonrobot/ugv_sdk.git
git clone https://github.com/westonrobot/async_port.git
cd ..
sudo apt update
rosdep update
rosdep install --from-paths src --ignore-src -r -y # install dependencies
colcon build --symlink-install --cmake-args=-DCMAKE_BUILD_TYPE=Release --parallel-workers $(nproc) # build the workspace
source ~/.bashrcExpected Result
colcon build should proceed without issue and running both of the following commands should produce no issues:
ros2 launch scout_base scout_mini_base.launch.py
ros2 run teleop_twist_keyboard teleop_twist_keyboard Actual Result
Build for scout_base_ros package fails.
Output of build error:
391 | declare_parameter( | ^~~~~~~~~~~~~~~~~ /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:391:3: note: candidate expects 4 arguments, 1 provided /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/src/scout_base_ros.cpp:20:26: error: no matching function for call to ‘westonrobot::ScoutBaseRos::declare_parameter(const char [11])’ 20 | this->declare_parameter("odom_frame"); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ In file included from /opt/ros/humble/include/rclcpp/rclcpp/executors/single_threaded_executor.hpp:28, from /opt/ros/humble/include/rclcpp/rclcpp/executors.hpp:22, from /opt/ros/humble/include/rclcpp/rclcpp/rclcpp.hpp:155, from /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/include/scout_base/scout_base_ros.hpp:16, from /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/src/scout_base_ros.cpp:10: /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:421:3: note: candidate: ‘template auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool)’ 421 | declare_parameter( | ^~~~~~~~~~~~~~~~~ /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:421:3: note: template argument deduction/substitution failed: /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/src/scout_base_ros.cpp:20:26: note: candidate expects 4 arguments, 1 provided 20 | this->declare_parameter("odom_frame"); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ In file included from /opt/ros/humble/include/rclcpp/rclcpp/executors/single_threaded_executor.hpp:28, from /opt/ros/humble/include/rclcpp/rclcpp/executors.hpp:22, from /opt/ros/humble/include/rclcpp/rclcpp/rclcpp.hpp:155, from /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/include/scout_base/scout_base_ros.hpp:16, from /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/src/scout_base_ros.cpp:10: /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:434:3: note: candidate: ‘template auto rclcpp::Node::declare_parameter(const string&, const ParameterDescriptor&, bool)’ 434 | declare_parameter( | ^~~~~~~~~~~~~~~~~ /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:434:3: note: template argument deduction/substitution failed: /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/src/scout_base_ros.cpp:20:26: note: couldn’t deduce template parameter ‘ParameterT’ 20 | this->declare_parameter("odom_frame"); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ In file included from /opt/ros/humble/include/rclcpp/rclcpp/executors/single_threaded_executor.hpp:28, from /opt/ros/humble/include/rclcpp/rclcpp/executors.hpp:22, from /opt/ros/humble/include/rclcpp/rclcpp/rclcpp.hpp:155, from /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/include/scout_base/scout_base_ros.hpp:16, from /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/src/scout_base_ros.cpp:10: /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:366:3: note: candidate: ‘const rclcpp::ParameterValue& rclcpp::Node::declare_parameter(const string&, const rclcpp::ParameterValue&, const ParameterDescriptor&, bool)’ 366 | declare_parameter( | ^~~~~~~~~~~~~~~~~ /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:366:3: note: candidate expects 4 arguments, 1 provided /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:391:3: note: candidate: ‘const rclcpp::ParameterValue& rclcpp::Node::declare_parameter(const string&, rclcpp::ParameterType, const ParameterDescriptor&, bool)’ 391 | declare_parameter( | ^~~~~~~~~~~~~~~~~ /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:391:3: note: candidate expects 4 arguments, 1 provided /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/src/scout_base_ros.cpp:21:26: error: no matching function for call to ‘westonrobot::ScoutBaseRos::declare_parameter(const char [11])’ 21 | this->declare_parameter("base_frame"); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/opt/ros/humble/include/rclcpp/rclcpp/node.hpp:391:3: note: candidate: ‘const rclcpp::ParameterValue& rclcpp::Node::declare_parameter(const string&, rclcpp::ParameterType, const ParameterDescriptor&, bool)’ 391 | declare_parameter( | ^~~~~~~~~~~~~~~~~ /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:391:3: note: candidate expects 4 arguments, 1 provided /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/src/scout_base_ros.cpp:22:26: error: no matching function for call to ‘westonrobot::ScoutBaseRos::declare_parameter(const char [16])’ 22 | this->declare_parameter("odom_topic_name"); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ In file included from /opt/ros/humble/include/rclcpp/rclcpp/executors/single_threaded_executor.hpp:28, from /opt/ros/humble/include/rclcpp/rclcpp/executors.hpp:22, from /opt/ros/humble/include/rclcpp/rclcpp/rclcpp.hpp:155, from /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/include/scout_base/scout_base_ros.hpp:16, from /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/src/scout_base_ros.cpp:10: /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:421:3: note: candidate: ‘template auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool)’ 421 | declare_parameter( | ^~~~~~~~~~~~~~~~~ /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:421:3: note: template argument deduction/substitution failed: /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/src/scout_base_ros.cpp:22:26: note: candidate expects 4 arguments, 1 provided 22 | this->declare_parameter("odom_topic_name"); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ In file included from /opt/ros/humble/include/rclcpp/rclcpp/executors/single_threaded_executor.hpp:28, from /opt/ros/humble/include/rclcpp/rclcpp/executors.hpp:22, from /opt/ros/humble/include/rclcpp/rclcpp/rclcpp.hpp:155, from /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/include/scout_base/scout_base_ros.hpp:16, from /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/src/scout_base_ros.cpp:10: /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:434:3: note: candidate: ‘template auto rclcpp::Node::declare_parameter(const string&, const ParameterDescriptor&, bool)’ 434 | declare_parameter( | ^~~~~~~~~~~~~~~~~ /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:434:3: note: template argument deduction/substitution failed: /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/src/scout_base_ros.cpp:22:26: note: couldn’t deduce template parameter ‘ParameterT’ 22 | this->declare_parameter("odom_topic_name"); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ In file included from /opt/ros/humble/include/rclcpp/rclcpp/executors/single_threaded_executor.hpp:28, from /opt/ros/humble/include/rclcpp/rclcpp/executors.hpp:22, from /opt/ros/humble/include/rclcpp/rclcpp/rclcpp.hpp:155, from /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/include/scout_base/scout_base_ros.hpp:16, from /home/cinnalab/github/FRANCIS/src/scout2Mini/scout_ros2/scout_base/src/scout_base_ros.cpp:10: /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:366:3: note: candidate: ‘const rclcpp::ParameterValue& rclcpp::Node::declare_parameter(const string&, const rclcpp::ParameterValue&, const ParameterDescriptor&, bool)’ 366 | declare_parameter( | ^~~~~~~~~~~~~~~~~ /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:366:3: note: candidate expects 4 arguments, 1 provided
ZED Camera model
ZED2i
Environment
- Ubuntu 22.04.5 LTS
- ROS2 Humble
- Jetpack 6.1
- Nvida AGX Orion
- zed2i (but doesn't matter)Anything else?
No response