You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

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. For Windows C++ applications, you may need to link with thrownew.obj from Visual Studio to explicitly enable exceptions when using new operators. See MSDN for further details.
See the example makefiles for additional system libraries that might be required for successful linking.

The lcodedata object file is part of the liblmxclient library. This file is generated based on your security configuration file when building the LM-X distribution. See Getting Started with LM-X License Manager for information on how to build the LM-X distribution.

To make your application more secure, you should use a newly generated lcodedata object file each time you link the application, particularly whenever you update LM-X to a new version. This precaution does not apply to the license generator, because it should not be subject to attacks. Also note that it is not necessary for the license generator and the application to use the same object file.

  • No labels