Skip to content
binho.io (opens in a new tab)Contact Us

Installation

The BMC C++ SDK Windows installer sets up the necessary components for the SDK on the system. This includes:

  • A dynamic library:
    • bmc_sdk.dll on Windows
    • libbmc_sdk.dylib on macOS
    • libbmc_sdk.so on Linux
  • A static library:
    • bmc_sdk_static.lib on Windows
    • libbmc_sdk_static.a on macOS
    • libbmc_sdk_static.a on Linux
  • Example applications to test the SDK
  • Header files for integration (include directory)

As a prerequisite, the C++ SDK requires having the BinhoMissionControl Bridge (bmcbridge) utility installed and added to the PATH environment variable.

To improve modularization and streamline our update process, we’ve decided to separate the BinhoMissionControl Bridge from the BMC C++ SDK. The BMC Bridge, which connects high-level interfaces like Binho Mission Control to our host adapters, is updated frequently. By decoupling it from the BMC C++ SDK, we can deliver more focused updates to each component. Additionally, as we continue to meet the growing demand for a native C/C++ SDK, we’re also planning to open-source the BMC C++ SDK to further empower the developer community.

  1. Download BMC Bridge installers:

    - BMC Bridge for Windows 32-bit
    - BMC Bridge for Windows 64-bit
  2. Once installed, proceed with the following setup instructions:
  • The bridge is typically installed in C:\Program Files (x86)\BinhoMissionControlBridge
  • Add this path to the system’s PATH environment variable.
    • Press Win + R , type sysdm.cpl , and press Enter.
    • Go to the Advanced tab, and click on Environment Variables.
    • In the System variables section, find the PATH variable, select it, and click Edit.
    • Click New and add C:\Program Files (x86)\BinhoMissionControlBridge
  • To verify the installation, open Command Prompt and execute:
    • bmcbridge --version
  1. Download Linux or macOS binaries:
    - Bridge macOS binaries for ARM
    - Bridge macOS binaries for Intel
    - Bridge Linux binaries
  2. Extract the binaries and place the extracted folder in any location.
  3. Open a Terminal window and navigate to the directory where the binaries were extracted.
  4. Add the directory to the PATH environment variable so the binaries are found. Edit ~/.zshrc (Zsh) or ~/.bashrc (bash on Linux or macOS):

    nano ~/.zshrc

    or, for Bash:

    ~/.bashrc
  5. Add the following line at the end of the file:

    export PATH=/path/to/your/extracted/folder:$PATH

    Replace /path/to/your/extracted/folder with the actual path to the extracted folder.
  6. Save the file and apply the changes by running:

    source ~/.zshrc

    or, for Bash users:

    source ~/.bashrc
  7. To verify the installation, run the following command in Terminal:

    bmcbridge --version
  • Add C:\Program Files (x86)\BinhoMissionControlSDK to the system’s PATH environment variable.
  1. Download the Installer:

    - BMC C++ SDK for Windows 32-bit
    - BMC C++ SDK for Windows 64-bit
  2. Run the Installer: Double-click on the installer and follow the on-screen prompts.
  3. Installation Directories: By default, the SDK will be installed into the c:\Program Files (x86)\BinhoMissionControlSDK directory. The directory contains:
    • bmc_sdk.dll: The SDK dynamic link library.
    • bmc_sdk_static.lib: The SDK static library.
    • README.md: Read-me file in markdown format for users.
    • examples: A directory containing example applications.
    • include: A directory containing various header files necessary for SDK integration.
  4. Add to PATH Environment Variable. For the applications to function correctly:
    Both the bmcbridge and the BMC C++ SDK installation directories must be added to the system’s PATH environment variable.
  5. Integration: To integrate the BMC C++ SDK into a project:
    • Reference the SDK library using the static or dynamic library files.
    • Include necessary headers from the include directory.
  6. Test the Example Applications: After setting up the PATH, run the example applications in the examples directory.
└── BinhoMissionControlSDK
├── bmc_sdk.dll (or lib/libbmc_sdk.dylib on macOS, lib/libbmc_sdk.so on Linux)
├── bmc_sdk_static.lib (or lib/libbmc_sdk_static.a on macOS and Linux)
├── README.md
├── examples
│ ├── list_devices
│ ├── nova_breathing_leds
│ ├── sample_app_using_sample_library
│ ├── sample_library
│ ├── supernova_101
│ ├── supernova_i2c
│ ├── supernova_i2c_benchmark
│ ├── i3c_cccs
│ ├── i3c_ibis
│ ├── i3c_ICM42605
│ ├── ...
└── include
├── bridge_reader.h
├── BridgeReader_windows.h
├── CommandDispatcher.h
├── CommandManager.h
├── CommandRequest.h
├── CommandResponse.h
└── definitions.h