LicenseSpring

C++ Licensing SDK for Native and Embedded Applications

The LicenseSpring C++ SDK lets you implement license activation, entitlement enforcement, and usage tracking directly inside your native C and C++ application with no external licensing infrastructure to build or maintain.

Built for performance-critical software, the SDK supports desktop, embedded, industrial, and high-performance environments across Windows, macOS, Linux, Android, ARM, and RTOS targets.

  • ISO 27001 Certified
  • ISO 9001 Certified
  • Trusted by Software Vendors Worldwide

Implement C++ Licensing in Minutes

The C++ SDK integrates as a native library directly into your codebase. Once linked, you have full access to LicenseSpring's licensing infrastructure.

With the SDK, you can:

Activate and validate licenses at runtime: online, offline, or in air-gapped environments

Enforce node-locked, floating, and consumption-based licensing: using the model that fits your product

Gate features by entitlement: control access to functionality at the SDK level

Run local license checks with configurable grace periods: define how long the SDK honors a cached license before requiring revalidation, so connectivity loss never interrupts active users

Bind licenses to hardware: generate persistent hardware IDs using multiple device fingerprinting algorithms suited to the deployment environment

Track usage and activations: feed license telemetry back to the LicenseSpring platform in real time

Not a LicenseSpring customer? Get your free account now.

Built for Native and Performance-Critical Software

The C++ SDK is designed for products where performance, security, and native execution are non-negotiable.

Common Use Cases

Use CaseDescription
Desktop Software
Licensing for installed Windows, macOS, or Linux applications
Embedded Systems
Licensing embedded software running on specialized hardware
Engineering & CAD Tools
Protecting high-value computational applications
Industrial Software
Licensing manufacturing and automation software
Scientific Computing
Licensing HPC and research software written in C++
RTOS and ARM Targets
Licensing firmware and real-time applications on ARM-based hardware

Supported Platforms and Build Environments

The C++ SDK provides prebuilt binaries across all major operating systems and compiler toolchains. Choose the build that matches your target environment.

Windows

Supported from Windows 7 and later. Prebuilt builds available for:

Visual StudioToolchain
Visual Studio 2015
MSVC v140
Visual Studio 2017
MSVC v141
Visual Studio 2019
MSVC v142
Visual Studio 2022
MSVC v143
Visual Studio 2025
MSVC v145

macOS

  • Supported versions: macOS 10.12 Sierra and later (x86_64) · macOS 11.0 Big Sur and later (ARM)

  • Compiled using clang 9.0. Available builds: x86_64 · ARM · MacUniversal (combined binary via lipo)

Linux

Tested on Ubuntu 18.04 LTS and Ubuntu 20.04 LTS. Compatible with any distribution running GCC 7.5+ and C++11 or C++14.

Prebuilt SDK builds:
  • GCC 7.5

  • GCC 9.2.1

  • Legacy build compiled with GLIBCXX_USE_CXX11_ABI=0

Android

  • Supported from Android API Level 24 (Android 7.0 Nougat) and later.

  • Supported ABIs: arm64-v8a · armeabi-v7a · x86 · x86_64

  • Built using Android NDK 21.4, 26.1, and 27.2.

Hardware ID Generation

Starting with SDK version 7.42.0, LicenseSpring includes a standalone Hardware ID Generator library that operates independently of the core SDK.

The library computes unique, persistent machine fingerprints using multiple algorithms, selecting the approach appropriate for the deployment environment, whether that's a physical workstation, a virtual machine, or an embedded device.

Generated hardware IDs are used for:
  • Node-locked license binding

  • Device identification and activation tracking

  • Consistent hardware fingerprinting across multi-SDK product deployments

Supported platforms:
  • Windows

  • macOS

  • Linux

Each SDK download package includes the appropriate platform binaries.

Cross-SDK Interoperability

Products built across multiple components or platforms can combine the C++ SDK with other LicenseSpring SDKs. For example, pairing a C++ core engine with a .NET or Java front-end, or a Node.js management interface.

All LicenseSpring SDKs share a common license file format and compute hardware identifiers using the same underlying logic. A license issued to a device is recognized consistently across every component of your product, regardless of which SDK each part uses.

Offline and Air-Gapped Licensing

The C++ SDK fully supports deployments with limited or no internet connectivity, with two distinct activation paths:

  • **Offline activation:** uses a file-exchange flow for environments that have occasional or restricted connectivity
  • **Air-gapped activation:** uses a code-exchange flow for environments with no external data transfer permitted

Both paths support local license validation with configurable grace periods, making the C++ SDK suitable for secure facilities, defense environments, industrial networks, and any deployment where persistent server connectivity cannot be guaranteed.

Release Notes and SDK Updates

Stay current on new features, platform support additions, security updates, and bug fixes via the LicenseSpring Platform Changelog.

Get Help Integrating the C++ SDK

Our developer support team can help you implement licensing quickly and correctly.

Full SDK documentation and API reference

Integration tutorials and code samples

Direct technical support

Add Professional Licensing to Your C++ Application

The LicenseSpring C++ SDK gives you the infrastructure to protect your software, enforce licensing policies, and monetize native applications across every platform you ship.