From: Stefan Slapeta (stefan_at_[hidden])
Date: 2004-12-06 07:48:08
Roland Schwarz wrote:
> [many things...]
There are two problems: one is in the jamfile, the other is in boost
configuration. Both together make it impossible to configure
boost.thread for a dynamic rt!
thread/build/jamfile: remove the requirements for the runtime.
# if defined(BOOST_MSVC) || defined(BOOST_INTEL_WIN)
//For VC++, choose according to threading library setting
# if defined(_DLL)
//Threading library is dll: use Boost.Threads dll
# define BOOST_THREAD_USE_DLL
# define BOOST_THREAD_DECL __declspec(dllimport)
# define BOOST_DYN_LINK
//Threading library is lib: used Boost.Threads lib
# define BOOST_THREAD_USE_LIB
# define BOOST_THREAD_DECL
IMO this sequence is wrong (look at the comments!) because the _DLL
macro _DOESN'T_ say that a dll is built!!!! It rather says that a shared
runtime is used (I don't know if this was the intention behind this
sequence, the comment is wrong anyway).
The code as is means that every static rt configuration is linked to a
static boost.thread lib and every dynamic rt configuration is linked to
boost.thread as dll. I just don't know if there is any rationale behind
automatically selecting these combinations.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk