Shared memory exchange

This section describes how to support shared memory exchange in Eclipse Cyclone DDS, which is based on Eclipse iceoryx.


Eclipse iceoryx depends on several packages (cmake, libacl1, libncurses5, pkgconfig and maven).


The following steps were done on Ubuntu 20.04.

  1. Install the prerequisite packages:

    sudo apt install cmake libacl1-dev libncurses5-dev pkg-config maven
  2. Get and build iceoryx. The following assumes that the install is in your home directory:

    git clone -b release_2.0
    cd iceoryx
    cmake -Bbuild -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=install -DBUILD_SHARED_LIBS=ON -Hiceoryx_meta
    cmake --build build --config Release --target install
  3. Get Cyclone DDS and build it with shared memory support:

    git clone
    cd cyclonedds
    cmake -Bbuild -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=install -DBUILD_EXAMPLES=On -DCMAKE_PREFIX_PATH=~/iceoryx/install/
    cmake --build build --config Release --target install

When the compiler has finished, the files for both iceoryx and Cyclone DDS can be found in the specified install directories.