Installation Requirements

ROS 2 Releases

rmw_connextdds and rmw_connextddsmicro both support multiple versions of ROS 2.

The following table summarizes the installation methods available for each release:

ROS 2 Release

From Source

Binary

Rolling

Yes

Yes

Foxy

Yes

No

Eloquent

Yes

No

Dashing

Yes

No

RTI Connext DDS Requirements

Both RMW packages require the appropriate version of RTI Connext DDS to be available on the build and target systems.

rmw_connextdds requires RTI Connext DDS Professional (version 5.3.1 or later), while rmw_connextddsmicro requires RTI Connext DDS Micro (version 3.0.3 or later).

The installations must be made available via environment variables. The RMW packages will be skipped, and no library will be generated if the required product is not installed.

Variables can also be specified as arguments to cmake (e.g. --cmake-args -DVAR=VALUE), in which case they will take precedence over values in the environment.

RTI Connext DDS Professional Requirements

RTI Connext DDS Professional 5.3.1 or later must be installed in order to build and use rmw_connextdds.

The installation path must be specified using either CONNEXTDDS_DIR, or NDDSHOME. CONNEXTDDS_DIR takes precendence over NDDSHOME.

The build system will try to guess the correct target architecture based on the host build environment. Use CONNEXTDDS_ARCH to manually specify the target build architecture. This value must match one of the set of libraries installed under ${CONNEXTDDS_DIR}/lib.

Note

The rtisetenv_<architecture> scripts shipped with RTI Connext DDS can be used to automatically set NDDSHOME (in addition to configuring PATH and LD_LIBRARY_PATH to load the Connext libraries and tools).

Even though they are “architecture-specific”, these scripts will not set CONNEXTDDS_ARCH.

Note

A warning will be generated by package rti_connext_dds_cmake_module if no Connext installation is specified.

RTI Connext DDS Micro Requirements

RTI Connext DDS Micro 3.0.3 or later must be installed in order to build and use rmw_connextddsmicro.

Specify the installation path using RTIMEHOME (optional). If unspecified, the build system will inspect the installation of RTI Connext DDS Professional (if one is available) for a directory whose name starts with rti_connext_dds_micro-. The first result found will be used.

Similarly to RTI Connext DDS Professional, the build system will try to guess the correct target architecture based on the host build environment. Use RTIME_TARGET_NAME to manually specify the target build architecture. This value must match one of the set of libraries installed under ${RTIMEHOME}/lib.

If Micro has never been built from source and no binary libraries are available under ${RTIMEHOME}/lib, the build system will automatically try to build Micro from source for the detected target build environment. In this case, RTIME_TARGET_NAME will be automatically set to one of the following values:

Host System

RTIME_TARGET_NAME

Linux

Linux

macOS

Darwin

Windows

Windows

If you encounter any issue building Micro this way, please generate libraries by hand using the included rtime-make script (see the official documentation).

Note

The automatic detection of RTI Connext DDS Micro can be disabled by setting RTIMEHOME to an invalid (i.e. non-existing) path.

Warning

The automatic detection of RTI Connext DDS Micro is only available when RTI Connext DDS Professional 6.0.0 or later is installed.