This page refers to LM-X v4.5 and newer, which made changes to the SDK distribution. If you are using a version older than v4.5, see documentation for previous versions.

You generate licenses using xmllicgen, as described in Generating licenses. For your protected application to compile, you need to include the lmx.h header file.

When linking your application, make sure to use the correct set of libraries for your compilation environment.

For Windows only: A single 32-bit or 64-bit LM-X Windows SDK provides a compatible set of LM-X libraries for each supported version of Visual Studio. During the compilation process, the correct libraries will be selected automatically based on the compiler you use.

If you need to use multiple versions of Visual Studio, or you need to use a different Windows compiler (such as an open source compiler), you can build a dll version of LM-X that lets you use LM-X with both supported and unsupported compilers. This alternative offers the best possible flexibility, because the dll will be independent of the compiler used for building your product.

For full details, see the dll example provided with the distribution.

On Windows, multiple versions of the libraries are provided, with suffixes _mt, _mtd, _md or _mdd according to the type:

Suffix

Description

Restrictions

_mt

Multithreaded static C/C++ runtime

 

_mtd

Multithreaded static C/C++ debug runtime

You are not permitted to ship your software using this library.

_md

Multithreaded dynamic C/C++ runtime

 

_mdd

Multithreaded dynamic C/C++ debug runtime

You are not permitted to ship your software using this library.

Please consult your compiler documentation for further information.

The protected application should be linked with the liblmxclient library (liblmxclient[suffix].lib on Windows or liblmxclient.a on Unix) libraries.
See the example makefiles for additional system libraries that might be required for successful linking.