Yet Another Robot Platform
Configure YARP to use ROS

Not all versions of YARP have ROS support enabled by default.

In this case you'll need to turn the following flags on in CMake before (re-)compiling YARP:

  • CREATE_OPTIONAL_CARRIERS (for support of ROS wire protocols)
  • ENABLE_yarpcar_tcpros_carrier (the usual protocol for topics)
  • ENABLE_yarpcar_rossrv_carrier (tcpros with minor tweaks for services)
  • ENABLE_yarpcar_xmlrpc_carrier (used by ros nameserver and node interfaces)

If you have an older version of YARP, you may need to rely on yarpidl_rosmsg program, as per the tutorial. In that case turn on these flags (which are no longer required in newer versions of YARP):

  • CREATE_IDLS (for support of ROS .msg/.srv files). Reconfigure after setting this flag.
  • ENABLE_yarpidl_rosmsg (a program to convert .msg/.srv files into YARP-usable form)

YARP does not link to any parts of the ROS codebase, so don't worry about how to tell YARP where to find the ROS libraries, it doesn't need them. You do not need to have ROS installed in order to interoperate with it across the network.