| Home | Libraries | People | FAQ | More

## Macro BOOST_CONTRACT_DYN_LINK

BOOST_CONTRACT_DYN_LINK — Define this macro to compile this library as a shared library (recommended).

## Synopsis

    // In header: <boost/contract/core/config.hpp>

    BOOST_CONTRACT_DYN_LINK

## Description

If this macro is defined, this library is compiled so it can be linked as a shared library (a.k.a., Dynamically Linked Library or DLL) to user code. Also, this library will automatically define this macro when Boost libraries are built as dynamic libraries (e.g., defining `BOOST_ALL_DYN_LINK`).

| Warning
In general this library will correctly check contracts at run-time only when compiled as a shared library, unless user code checks contracts in a single program unit (e.g., a single program with only statically linked libraries that check contracts). Therefore, it is recommended to build and use this library as a dynamic library by defining this macro (or equivalently by building all Boost libraries as dynamic libraries and `BOOST_ALL_DYN_LINK` is defined).

See Also:

Compilers and Platforms