3. Build

The RTI Connext TSS libraries are shipped as source and must be built before use by a FACE application.

3.1. Configure build environment

In preparation for a build:

  1. Download and install CMake.
RTI Connext TSS provides and uses CMake scripts to generate the environment to build its libraries and example applications.
  1. Set an RTITSSHOME environment variable to point to your Connext TSS installation directory.

    For example, if Connext TSS is installed in /home/user/rti/connext-tss/, then set RTITSSHOME (on bash) with this command:

export RTITSSHOME=/home/user/rti/rti_connext_tss-2.1.1.0
  1. If building for Connext DDS Professional, set an NDDSHOME environment variable to point to your Connext DDS installation.

    For example, if Connext DDS is installed in /opt/local/rti/rti_connext_dds-5.3.1, then set NDDSHOME (on bash) with this command:

export NDDSHOME=/opt/local/rti/rti_connext_dds-5.3.1
  1. If building for Connext DDS Micro, set an RTIMEHOME environment variable to point to your Connext DDS Micro installation.

    For example, if Connext DDS Micro is installed in /opt/local/rti/rti_connext_micro.2.4.11.1, then set RTIMEHOME (on bash) with this command:

export RTIMEHOME=/opt/local/rti/rti_connext_micro.2.4.11.1

Note

The Connext DDS Professional and Connext DDS Micro libraries must be conformant to the FACE profile of the Connext TSS libraries being built. See RTI Connext Documentation for help with configuring and building Connext for FACE.

3.2. Set architecture

The architecture identifies the platform on which to run RTI Connext TSS.

CMake architecture files are provided for the following:

  • x64Linux3gcc4.8.2

For other architectures, follow the Porting guide (Section 5) to add a new architecture.

Once an architecture is chosen, set an environment variable RTITSSARCH to the architecture name:

export RTITSSARCH=x64Linux3gcc4.8.2

3.3. Build libraries

This section describes how to do an out-of-source build of RTI Connext TSS using CMake.

  • Create a build directory

    cd ${RTITSSHOME}
    mkdir build
    
  • Run CMake, with the necessary definitions as described below

    cd build
    cmake -DRTI_CONNEXT_TYPE=<your_connext_type> -DRTI_TSS_ENABLE_FACE_COMPLIANCE=<your_face_profile> -DCMAKE_BUILD_TYPE=<your_build_type> ../
    
    RTI_CONNEXT_TYPE sets the Connext DDS product being used:
    • micro” (default)
    • pro

    RTI_TSS_ENABLE_FACE_COMPLIANCE sets the FACE profile with which RTI Connext TSS is being built to conform:

    • None” (default)
    • GeneralPurpose
    • SafetyExtended
    • SafetyBase
    • Security

    Note

    While RTI_TSS_ENABLE_FACE_COMPLIANCE can be set to any FACE OSS profile, this release of RTI Connext TSS supports up to the SafetyBase profile with Connext DDS Micro 2.4.11.1, and no profile with Connext DDS Pro 5.3.1.

    CMAKE_BUILD_TYPE sets the type of library or executable built:

    • Release” (default)
    • Debug

    Alternatively, the CMake GUI (cmake-gui) can be used instead of the command line.

  • Build the RTI Connext TSS libraries

    cmake --build .
    

3.4. Verify build

A successful build will result in two (statically linked) libraries: rti_tsscpp and ftypes.

Libraries for RTI Connext DDS Pro will be built as ${RTITSSHOME}/lib/${RTITSSARCH}/pro/librti_tsscppz.a and ${RTITSSHOME}/lib/${RTITSSARCH}/pro/libftypesz.a.

Libraries for RTI Connext DDS Micro will be built as ${RTITSSHOME}/lib/${RTITSSARCH}/micro/librti_tsscppz.a and ${RTITSSHOME}/lib/${RTITSSARCH}/micro/libftypesz.a

Debug library names will have a ‘d’ suffix (e.g. ‘’librti_tsscppzd.a’’ and libftypeszd.a).