You can integrate the Ditto SDK into C++ projects to develop for Linux and iOS platforms.

For a complete overview of the platforms, transports, and devices the C# SDK supports, select **C++ **from the Directory of Compatibility Maps.

For the API reference, see Ditto 4.7.1 API Reference Documentation.

To install the C++ SDK:

1

Fetch and extract the Ditto package. (Downloading and Unpacking Ditto)

2

Configure your app to link to the Ditto static library. (Linking to Ditto)

Downloading and Unpacking Ditto

Download Ditto.tar.gz and unpack an archive containing the libditto.a static library and Ditto header:

curl -O https://software.ditto.live/cpp-linux-x86_64/Ditto/4.7.4/dist/Ditto.tar.gz && tar xvfz Ditto.tar.gz

Linking to Ditto

Add -lditto as a compilation step in the main.cpp source file:

For instructions on adding cross-platform Bluetooth Low Energy (LE) capabilities, see Bluetooth on Linux.

BlueZ is the official Bluetooth protocol stack implementation for Linux systems to communicate with other Bluetooth-enabled platforms.

# This command assumes:
# You have unzipped the Ditto.tar.gz in a relative directory ./sdk/
# Your main code entry point is in ./src/main.cpp

g++ -std=c++17 ./src/main.cpp -I ./sdk -lditto -ldl -lrt -pthread -L ./sdk -o dist/main;

 # Once executed, your output will be available at: ./dist/main

Importing Ditto

From the source code of your app, using #include <Ditto.h>, import Ditto and provide your access credentials:

C++
auto identity =
    Identity::OnlinePlayground("YOUR_APP_ID", "PLAYGROUND_TOKEN", true);
try {
  Ditto ditto = Ditto(identity, dir);
  ditto.set_minimum_log_level(LogLevel::debug);
  ditto.start_sync();
} catch (const DittoError &err) {
}

Was this page helpful?