Setup Guide for CycloneDDS

Geting Started

The following are required before building Cyclone DDS:

  • C Compiler (i.e. GCC).
  • GIT.
  • CMAKE (3.7 or later).
  • OpenSSL (1.1 or later)
  • Java JDK (8 or later).
  • Apache Maven (3.5 or later).

CycloneDDS Installation

To download CycloneDDS on Linux/Raspberry Pi:

$ git clone https://github.com/eclipse-cyclonedds/cyclonedds.git
$ cd cyclonedds
$ mkdir build

To build and install CycloneDDS on Linux/Raspberry Pi:

$ cd build
$ cmake -DCMAKE_INSTALL_PREFIX=<install-location> ..
$ cmake --build .
$ cmake --build . --target install

Note

The two cmake --build commands might require being executed with sudo depending on the <install-location>.

Warning

Apache Maven requires internet access to update the list of artifacts. This will be required when executing cmake --build .. Since the Raspberry Pi is not allowed to connect to the Sogeti network this was achieved using a mobile hotspot.

Testing CycloneDDS Installation

In order to test the CycloneDDS installation on that particular device we are going to run the Hello World example that is provided. Open two terminals and move to the ~/cyclonedds/build/bin/ directory and in each terminal run:

$ ./HelloworldSubscriber
$ ./HelloworldPublisher

Notes

Note

In order to customize the configuration of Cyclone DDS create a .xml file and point to it (in Linux) by:

$ export CYCLONEDDS_URI=file://$PWD/cyclonedds.xml

For example the following configuration file was utilized to choose the wifi0 network interface over all others.

  <?xml version="1.0" encoding="UTF-8" ?>
  <CycloneDDS xmlns="https://cdds.io/config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://cdds.io/config https://raw.githubusercontent.com/eclipse-cyclonedds/cyclonedds/master/etc/cyclonedds.xsd">
    <Domain id="any">
        <General>
            <NetworkInterfaceAddress>wifi0</NetworkInterfaceAddress>
        </General>
    </Domain>
</CycloneDDS>

Tips

Tip

Windows installation of CycloneDDS proved somehow problematic, instead a Linux subsystem using Ubuntu was utilized from within Windows.

Todo

Install CycloneDDS on a Windows machine.