get ros2 version in C++
Are there any #define to know which version of ROS2 I'm using in C++ source?
ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
Are there any #define to know which version of ROS2 I'm using in C++ source?
There are no defines in C/C++ out of the box.
That being said if your package depends on ros_environment
the following environment variables are set: ROS_VERSION
(which is either 1
or 2
), ROS_DISTRO
(e.g. dashing
or melodic
), etc.
You can use either to set compiler definitions in your package to be used in conditionals.
If you need more fine grain control you can also use the exact version number of each dependency (e.g. https://github.com/ros2/rmw_cyclonedd...).
Asked: 2019-11-01 16:46:52 -0600
Seen: 1,315 times
Last updated: Nov 02 '19
[ros2/rclcpp] Threadsafety of Node::create_publisher<>
function callback using std::bind in ros 2 subscription
Check whether parameter is set or not for a ros 2 node
message_event support in ros 2
Is there a release date of ros 2 or more informations about it?
Is the planned ROS1 to ROS2/DDS bridge available yet?