> Complete documentation index: [llms.txt](/llms.txt). Markdown versions of all pages are available by appending `.md` to page URLs.

# Environment Setup

> Set up a development environment for the legacy BMC C++ SDK: put the bmcbridge executable and the SDK library on PATH and provide nlohmann_json.

:::caution
**Legacy.** This page covers the BMC C++ SDK, which needs the Binho Mission Control Bridge and gets no new features. For the Supernova and the Pulsar, use [CosmicSDK](/software/cosmicsdk/), which talks to the adapter directly. The BMC C++ SDK remains the C++ option for the Nova.

:::

## Overview

To develop a C++ application using the BMC C++ SDK, ensure that both the BMC bridge executable and the SDK library are reachable in the system's PATH (the latter is only necessary for Windows users). Additionally, the library uses the `nlohmann_json` library, which is a requirement for formatting the parameters of the command requests.

Follow these steps to set up the environment:

1. Add the directory containing the BMC bridge executable and the directory containing the library to the PATH environment variable before running the application.

Alternatively, prepend the PATH variable to the command execution:

**On macOS:**

```shell
DYLD_LIBRARY_PATH=/path/to/dynamic_library PATH=$PATH:/path/to/bmcbridge ./your_app
```

**On Linux:**

```shell
LD_LIBRARY_PATH=/path/to/dynamic_library PATH=$PATH:/path/to/bmcbridge ./your_app
```

**On Windows (using Command Prompt):**

```shell
set PATH=%PATH%;\path\to\installation_dir\bmcbridge;\path\to\installation_dir
your_app.exe
```

**Or on Windows (using PowerShell):**

```shell
$env:PATH += ";\path\to\installation_dir\bmcbridge\;\path\to\installation_dir"
.\your_app.exe
```

Replace `/path/to/installation_dir` with the actual path to the `installation_dir` directory. Ensure to use the correct slashes for the operating system (`/` for Mac/Linux, `\` for Windows).