apt install#
This installation method is recommended for Ubuntu and Debian systems
with root
access. For other Linux distributions, and for non-root
installations, use the Linux installer.
1. Add the apt repository#
Before installing Connext, you need to add the RTI APT repository to your system with the following commands:
# Add RTI's official public key
$ sudo curl -sSL -o /usr/share/keyrings/rti-official-archive.gpg \
https://packages.rti.com/deb/official/repo.key
# Add the RTI repository to apt
$ printf -- "deb [arch=%s, signed-by=%s] %s %s main\n" \
$(dpkg --print-architecture) \
/usr/share/keyrings/rti-official-archive.gpg \
https://packages.rti.com/deb/official \
$(. /etc/os-release && echo ${VERSION_CODENAME}) | \
sudo tee /etc/apt/sources.list.d/rti-official.list >/dev/null
# Update apt
$ sudo apt update
(You can copy the full block of commands and paste it into your terminal all at once.)
2. Install Connext with apt#
After adding the repository, install Connext with the following command:
$ sudo apt install rti-connext-dds-7.3.0
The installation, under /opt/rti.com/rti_connext_dds-7.3.0
, includes:
The SDK to build your distributed applications.
Tools that help you design, visualize, and debug your system.
Infrastructure Services that perform dedicated functions in your system, such as recording, bridging, and persisting data.
(For more installation options, see RTI Connext for Debian Linux.)
To develop Python applications, you also need to install the Connext
Python API with pip
as follows:
$ pip install rti.connext
3. Get a free evaluation license#
Get a free evaluation license file at https://www.rti.com/free-trial .
After filling out a brief form, you will receive an email with the license
file rti_license.dat
.
(You don’t need to download any additional installer.)
Save this file to a location on your system. You will use it in the next step.
Existing customers
If you have already purchased a Connext bundle and prefer not to use an evaluation license file, follow the installation instructions here instead.
4. Run a Hello World program#
Generate and run a simple Connext application to verify the installation.
First, run the following command to configure your environment:
$ eval $(rtienv -l /path/to/rti_license.dat)
To define a data type for the Topic you will publish and subscribe to,
create a file named HelloWorld.idl
with the following content:
struct HelloWorld {
int32 value;
};
Next, generate the code to use that type in an example application for a target language. Select the programming language you’d like to use:
Run RTI Code Generator:
$ rtiddsgen -language python -example universal HelloWorld.idl
In one terminal, run the subscriber:
$ python HelloWorld_subscriber.py
In another terminal, run the publisher:
$ python HelloWorld_publisher.py
(Make sure you have configured the environment as shown above (using
rtienv
) for each shell; alternatively, copy the rti_license.dat
file to the current directory.)
You should see subscriber output similar to:
Hello World subscriber sleeping for 1 seconds...
Received: HelloWorld(value=0)
Hello World subscriber sleeping for 1 seconds...
Received: HelloWorld(value=1)
Hello World subscriber sleeping for 1 seconds...
Make sure you have make
and g++
installed. You can install them as follows:
$ sudo apt install make g++
Run the code generator:
$ rtiddsgen -language c++11 -example x64Linux4gcc7.3.0 HelloWorld.idl
(For ARM systems, use armv8Linux4gcc7.3.0
instead of x64Linux4gcc7.3.0
.)
Build the applications:
$ make -f makefile_HelloWorld_x64Linux4gcc7.3.0
In one terminal, run the subscriber:
$ ./objs/x64Linux4gcc7.3.0/HelloWorld_subscriber
In another terminal, run the publisher:
$ ./objs/x64Linux4gcc7.3.0/HelloWorld_publisher
(Make sure you have configured the environment as shown above (using
rtienv
) for each shell; alternatively, copy the rti_license.dat
file to the current directory.)
You should see subscriber output similar to:
::HelloWorld subscriber sleeping up to 1 sec...
[value: 1]
::HelloWorld subscriber sleeping up to 1 sec...
[value: 2]
...
Make sure you have make
and gcc
installed. You can install them as follows:
$ sudo apt install make gcc
Run the code generator:
$ rtiddsgen -language c -example x64Linux4gcc7.3.0 HelloWorld.idl
Build the applications:
$ make -f makefile_HelloWorld_x64Linux4gcc7.3.0
In one terminal, run the subscriber:
$ ./objs/x64Linux4gcc7.3.0/HelloWorld_subscriber
In another terminal, run the publisher:
$ ./objs/x64Linux4gcc7.3.0/HelloWorld_publisher
(Make sure you have configured the environment as shown above (using
rtienv
) for each shell; alternatively, copy the rti_license.dat
file to the current directory.)
You should see subscriber output similar to:
HelloWorld subscriber sleeping for 4 sec...
Received data
value: 0
Received data
value: 1
Make sure you have the .NET SDK installed. You can install it as follows:
$ sudo apt install dotnet-sdk-8.0
Run the code generator:
$ rtiddsgen -language c# -example net8 HelloWorld.idl
(If necessary, replace net8 with the version of .NET you are using.)
Delete the file NuGet.Config
(this file points to the installation directory, but for this evaluation we will download the NuGet packages from nuget.org):
$ rm NuGet.Config
Build the applications:
$ dotnet build
In one terminal, run the subscriber:
$ dotnet run -- --sub
In another terminal, run the publisher:
$ dotnet run -- --pub
(Make sure you have configured the environment as shown above (using
rtienv
) for each shell; alternatively, copy the rti_license.dat
file to the current directory.)
You should see subscriber output similar to:
HelloWorld subscriber sleeping for 4 sec...
value: 0
HelloWorld subscriber sleeping for 4 sec...
value: 1
Make sure you have make
and a Java JDK installed. You can install them as follows:
$ sudo apt install make openjdk-11-jdk
Run the code generator:
$ rtiddsgen -language java -example x64Linux4gcc7.3.0 HelloWorld.idl
Build the applications:
$ make -f makefile_HelloWorld_x64Linux4gcc7.3.0
In one terminal, run the subscriber:
$ make -f makefile_HelloWorld_x64Linux4gcc7.3.0 HelloWorldSubscriber
In another terminal, run the publisher:
$ make -f makefile_HelloWorld_x64Linux4gcc7.3.0 HelloWorldPublisher
(Make sure you have configured the environment as shown above (using
rtienv
) for each shell.)
You should see subscriber output similar to:
No data after 1 seconds.
Received:
value: 0
Received:
value: 1
...
Congratulations! You have successfully installed Connext.
Next steps#
Now you’re ready to build your own Connext distributed applications.