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 |
|
macOS |
|
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.