# UR ROS2 humble driver - Build error

**URL:** <https://forum.universal-robots.com/t/ur-ros2-humble-driver-build-error/39609>\
**Category:** ROS\
**Created:** [April 24, 2025, 4:17pm UTC](https://forum.universal-robots.com/t/ur-ros2-humble-driver-build-error/39609 "2025-04-24T16:17:11Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![vks](https://avatars.discourse-cdn.com/v4/letter/v/f14d63/32.png) [@vks](https://forum.universal-robots.com/u/vks)\
**Post date:** [April 24, 2025, 4:17pm UTC](https://forum.universal-robots.com/t/ur-ros2-humble-driver-build-error/39609/1 "2025-04-24T16:17:11Z")

</div>

Hello everyone,

This is my first post in this forum. Please excuse me for any mistakes. And I’m new to ROS.  
I have installed following

1. WSL2 (windows 11, GPU Nvidia RTX 4050, 32 GB Ram)
2. Ubuntu-22.04
3. ROS2 Humble

followed this UR github branch-Humble installation instructions : [Universal\_Robots\_ROS2\_Driver](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver/tree/humble?tab=readme-ov-file)

I get this following build error

## vemulapk@EMA-Surface-9:~/workspace/ros\_ur\_driver$ colcon build --cmake-args -DCMAKE\_BUILD\_TYPE=Release Starting \>\>\> ur\_dashboard\_msgs Starting \>\>\> ur\_moveit\_config Finished \<\<\< ur\_moveit\_config [0.43s] Finished \<\<\< ur\_dashboard\_msgs [0.46s] Starting \>\>\> ur\_controllers Finished \<\<\< ur\_controllers [0.27s] Starting \>\>\> ur\_robot\_driver Starting \>\>\> ur\_bringup Finished \<\<\< ur\_bringup [0.15s] — stderr: ur\_robot\_driver /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/dashboard\_client\_ros.cpp: In constructor ‘ur\_robot\_driver::DashboardClientROS::DashboardClientROS(const SharedPtr&, const string&)’: /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/dashboard\_client\_ros.cpp:55:40: error: ‘class urcl::primary\_interface::PrimaryClient’ has no member named ‘getRobotVersion’ 55 | auto robot\_version = primary\_client\_.getRobotVersion(); | ^~~~~~~~~~~~~~~/home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp: In constructor ‘ur\_robot\_driver::RobotStateHelper::RobotStateHelper(const SharedPtr&)’: /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp:72:41: error: ‘using element\_type = class urcl::primary\_interface::PrimaryClient’ {aka ‘class urcl::primary\_interface::PrimaryClient’} has no member named ‘getRobotVersion’ 72 | auto robot\_version = primary\_client\_-\>getRobotVersion(); | ^~~~~~~~~~~~~~~ /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/dashboard\_client\_ros.cpp: In constructor ‘ur\_robot\_driver::DashboardClientROS::DashboardClientROS(const SharedPtr&, const string&)’: /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/dashboard\_client\_ros.cpp:55:40: error: ‘class urcl::primary\_interface::PrimaryClient’ has no member named ‘getRobotVersion’ 55 | auto robot\_version = primary\_client\_.getRobotVersion(); | ^~~~~~~~~~~~~~~/home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp: In constructor ‘ur\_robot\_driver::RobotStateHelper::RobotStateHelper(const SharedPtr&)’: /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp:72:41: error: ‘using element\_type = class urcl::primary\_interface::PrimaryClient’ {aka ‘class urcl::primary\_interface::PrimaryClient’} has no member named ‘getRobotVersion’ 72 | auto robot\_version = primary\_client\_-\>getRobotVersion(); | ^~~~~~~~~~~~~~~ /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp: In member function ‘bool ur\_robot\_driver::RobotStateHelper::recoverFromSafety()’: /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp:136:26: error: ‘using element\_type = class urcl::primary\_interface::PrimaryClient’ {aka ‘class urcl::primary\_interface::PrimaryClient’} has no member named ‘commandUnlockProtectiveStop’ 136 | primary\_client\_-\>commandUnlockProtectiveStop(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~/home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp: In member function ‘bool ur\_robot\_driver::RobotStateHelper::jumpToRobotMode(urcl::RobotMode)’: /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp:167:26: error: ‘using element\_type = class urcl::primary\_interface::PrimaryClient’ {aka ‘class urcl::primary\_interface::PrimaryClient’} has no member named ‘commandPowerOff’ 167 | primary\_client\_-\>commandPowerOff(); | ^~~~~~~~~~~~~~~ /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp:170:26: error: ‘using element\_type = class urcl::primary\_interface::PrimaryClient’ {aka ‘class urcl::primary\_interface::PrimaryClient’} has no member named ‘commandPowerOn’ 170 | primary\_client\_-\>commandPowerOn(); | ^~~~~~~~~~~~~~/home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp:173:26: error: ‘using element\_type = class urcl::primary\_interface::PrimaryClient’ {aka ‘class urcl::primary\_interface::PrimaryClient’} has no member named ‘commandBrakeRelease’ 173 | primary\_client\_-\>commandBrakeRelease(); | ^~~~~~~~~~~~~~~~~~~ /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp: In member function ‘bool ur\_robot\_driver::RobotStateHelper::recoverFromSafety()’: /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp:136:26: error: ‘using element\_type = class urcl::primary\_interface::PrimaryClient’ {aka ‘class urcl::primary\_interface::PrimaryClient’} has no member named ‘commandUnlockProtectiveStop’ 136 | primary\_client\_-\>commandUnlockProtectiveStop(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~/home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp: In member function ‘bool ur\_robot\_driver::RobotStateHelper::stopProgram()’: /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp:264:22: error: ‘using element\_type = class urcl::primary\_interface::PrimaryClient’ {aka ‘class urcl::primary\_interface::PrimaryClient’} has no member named ‘commandStop’ 264 | primary\_client\_-\>commandStop(); | ^~~~~~~~~~~ /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp: In member function ‘bool ur\_robot\_driver::RobotStateHelper::jumpToRobotMode(urcl::RobotMode)’: /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp:167:26: error: ‘using element\_type = class urcl::primary\_interface::PrimaryClient’ {aka ‘class urcl::primary\_interface::PrimaryClient’} has no member named ‘commandPowerOff’ 167 | primary\_client\_-\>commandPowerOff(); | ^~~~~~~~~~~~~~~/home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp:170:26: error: ‘using element\_type = class urcl::primary\_interface::PrimaryClient’ {aka ‘class urcl::primary\_interface::PrimaryClient’} has no member named ‘commandPowerOn’ 170 | primary\_client\_-\>commandPowerOn(); | ^~~~~~~~~~~~~~ /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp:173:26: error: ‘using element\_type = class urcl::primary\_interface::PrimaryClient’ {aka ‘class urcl::primary\_interface::PrimaryClient’} has no member named ‘commandBrakeRelease’ 173 | primary\_client\_-\>commandBrakeRelease(); | ^~~~~~~~~~~~~~~~~~~/home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp: In member function ‘bool ur\_robot\_driver::RobotStateHelper::stopProgram()’: /home/vemulapk/workspace/ros\_ur\_driver/src/Universal\_Robots\_ROS2\_Driver/ur\_robot\_driver/src/robot\_state\_helper.cpp:264:22: error: ‘using element\_type = class urcl::primary\_interface::PrimaryClient’ {aka ‘class urcl::primary\_interface::PrimaryClient’} has no member named ‘commandStop’ 264 | primary\_client\_-\>commandStop(); | ^~~~~~~~~~~ gmake[2]: \*\*\* [CMakeFiles/ur\_robot\_driver\_plugin.dir/build.make:76: CMakeFiles/ur\_robot\_driver\_plugin.dir/src/dashboard\_client\_ros.cpp.o] Error 1 gmake[2]: \*\*\* Waiting for unfinished jobs… gmake[2]: \*\*\* [CMakeFiles/dashboard\_client.dir/build.make:76: CMakeFiles/dashboard\_client.dir/src/dashboard\_client\_ros.cpp.o] Error 1 gmake[1]: \*\*\* [CMakeFiles/Makefile2:176: CMakeFiles/dashboard\_client.dir/all] Error 2 gmake[1]: \*\*\* Waiting for unfinished jobs… gmake[2]: \*\*\* [CMakeFiles/ur\_robot\_driver\_plugin.dir/build.make:118: CMakeFiles/ur\_robot\_driver\_plugin.dir/src/robot\_state\_helper.cpp.o] Error 1 gmake[1]: \*\*\* [CMakeFiles/Makefile2:150: CMakeFiles/ur\_robot\_driver\_plugin.dir/all] Error 2 gmake[2]: \*\*\* [CMakeFiles/robot\_state\_helper.dir/build.make:76: CMakeFiles/robot\_state\_helper.dir/src/robot\_state\_helper.cpp.o] Error 1 gmake[1]: \*\*\* [CMakeFiles/Makefile2:254: CMakeFiles/robot\_state\_helper.dir/all] Error 2 gmake: \*\*\* [Makefile:146: all] Error 2

Failed \<\<\< ur\_robot\_driver [7.90s, exited with code 2]

Summary: 4 packages finished [9.10s]  
1 package failed: ur\_robot\_driver  
1 package had stderr output: ur\_robot\_driver  
2 packages not processed

---

<div class="post-metadata">

**Author:** ![vasilis.skarleas](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.universal-robots.com/vasilis.skarleas/32/6991_2.png) [@vasilis.skarleas](https://forum.universal-robots.com/u/vasilis.skarleas)\
**Post date:** [April 29, 2025, 10:34am UTC](https://forum.universal-robots.com/t/ur-ros2-humble-driver-build-error/39609/2 "2025-04-29T10:34:58Z")

</div>

Since you are running on WSL, I highly recommend to install the UR robot drivers for ROS2 via the Ubuntu’s apt install command. Here are more details:

```auto
sudo apt update
sudo apt install ros-humble-desktop

```

Check out the detailed instructions for all the steps that need to be done beforehand at: [Ubuntu (deb packages) — ROS 2 Documentation: Humble documentation](https://docs.ros.org/en/humble/Installation/Ubuntu-Install-Debs.html)
