6.1. Introduction

This section provides platform-specific instructions that you will need to build and run RTI Connext Micro applications.

For each supported operating system (OS), this section describes:

  • Supported combinations of OS versions, CPUs, and compilers

  • How to build your application, including:

    • Required Connext Micro and system libraries

    • Required compiler and linker flags

    • Details on how the Connext Micro libraries were built

To see a list of all supported platforms, refer to Supported Platforms and Programming Languages.

6.1.1. Library types

This section references Platform Independent Libraries (PIL) and Platform Support Libraries (PSL). These are library types that RTI provides in a Connext Micro installation. For more information, see Library types.

6.1.2. Build profiles

You can optionally build Connext Micro with a CERT profile. This restricts Connext Micro to only include features that are available or planned for Connext Cert; for more information, see Building Connext Micro with Compatibility for Connext Cert.

Any architecture ending with CERT is built with the CERT profile enabled.

Some features are only available on specific platforms; see the footnotes in the table below.

Table 6.1 Features by Profile

Feature/Capability

Non-CERT Profile

CERT Profile

Dynamic Participant Discovery

Static Endpoint Discovery

Dynamic Endpoint Discovery

C++ API

Shared Memory Transport (SHMEM)

1

Zero Copy v1

1

Zero Copy v2

1 2

1 2

Micro Application Generator (MAG)

1(1,2,3,4)

Not supported on FreeRTOS platforms.

2(1,2)

Only supported on Linux and QNX platforms.

6.1.3. Supported libraries by platform

The following table shows which Connext Micro libraries are supported on each platform (RTI architecture).

Table 6.2 Supported Libraries by Platform

Platform

RTI Architecture

Supported Libraries

Windows 10 x64

x86_64lePEvs2017

rti_me

rti_me_whsm

rti_me_rhsm

rti_me_discdpse

rti_me_discdpde

rti_me_netiosdm

rti_me_netioshmem

rti_me_appgen

rti_me_cpp

x86_64lePEvs2017CERT

rti_me

macOS 14 x64

x86_64leMachOclang15.0

rti_me

rti_me_whsm

rti_me_rhsm

rti_me_discdpse

rti_me_discdpde

rti_me_netiosdm

rti_me_netioshmem

rti_me_appgen

rti_me_cpp

x86_64leMachOclang15.0CERT

rti_me

macOS 14 arm64

armv8leMachOclang15.0

rti_me

rti_me_whsm

rti_me_rhsm

rti_me_discdpse

rti_me_discdpde

rti_me_netiosdm

rti_me_netioshmem

rti_me_appgen

rti_me_cpp

armv8leMachOclang15.0CERT

rti_me

Ubuntu 22.04 x64

x86_64leElfgcc12.3.0

rti_me

rti_me_whsm

rti_me_rhsm

rti_me_discdpse

rti_me_discdpde

rti_me_netiosdm

rti_me_netioshmem

rti_me_netiozcopy

rti_me_appgen

rti_me_cpp

x86_64leElfgcc12.3.0CERT

rti_me

rti_me_netiozcopy

Ubuntu 18.04 ARMv8

armv8leElfgcc7.3.0

rti_me

rti_me_whsm

rti_me_rhsm

rti_me_discdpse

rti_me_discdpde

rti_me_netiosdm

rti_me_netioshmem

rti_me_netiozcopy

rti_me_appgen

rti_me_cpp

armv8leElfgcc7.3.0CERT

rti_me

rti_me_netiozcopy

QNX 7.1 ARMv8

armv8leElfqcc8.3.0

rti_me

rti_me_whsm

rti_me_rhsm

rti_me_discdpse

rti_me_discdpde

rti_me_netiosdm

rti_me_netioshmem

rti_me_netiozcopy

rti_me_appgen

rti_me_cpp

QOS 2.2.1 (QNX OS for Safety)

armv8leElfqcc8.3.0CERT

rti_me

rti_me_netiozcopy

FreeRTOS 9.0.0 ARMv7E-M

armv7emleElfgcc7.3.1

rti_me

rti_me_whsm

rti_me_rhsm

rti_me_discdpse

rti_me_discdpde

rti_me_appgen

rti_me_cpp

armv7emleElfgcc7.3.1CERT

rti_me

6.1.4. Supported transports by platform

The following table shows which transports are supported on each architecture.

Table 6.3 Supported Transports by Platform

Platform

RTI Architecture

Intra

UDPv4

SHMEM

Zero Copy v1

Zero Copy v2

Windows 10 x64

x86_64lePEvs2017

x86_64lePEvs2017CERT

macOS 14 x64

x86_64leMachOclang15.0

x86_64leMachOclang15.0CERT

macOS 14 arm64

armv8leMachOclang15.0

armv8leMachOclang15.0CERT

Ubuntu 22.04 x64

x86_64leElfgcc12.3.0

x86_64leElfgcc12.3.0CERT

Ubuntu 18.04 ARMv8

armv8leElfgcc7.3.0

armv8leElfgcc7.3.0CERT

QNX 7.1 ARMv8

armv8leElfqcc8.3.0

QOS 2.2.1 (QNX OS for Safety)

armv8leElfqcc8.3.0CERT

FreeRTOS 9.0.0 ARMv7E-M

armv7emFreeRTOS9.0gcc7.3.1

armv7emFreeRTOS9.0gcc7.3.1CERT