From: Edward Diener (eddielee_at_[hidden])
Date: 2004-04-07 11:12:57
I know it is late to suggest a change but I think that the default when one
links to the dynamic RTL should be that a dynamic link library is created,
not a static library.
My own experience is that creating a dynamic link library is the norm when
linking to the dynamic RTL, creating a static library is the norm when
linking to the static lib version of the RTL, and that following any other
mixed setup seems to lead to problems at run-time, particularly when memory
management is involved.
Now I know that auto-link specifies it is an #error if one tries to create a
dynamic link library, using BOOST_DYN_LINK, when one is using the static
version of the RTL. I am wondering why this is any less of a problem than if
one attempts to create a static library using the DLL version of the RTL.
Despite the fact that I don't like either mixture, I would welcome an
explanation of why one is allowable, and safe, and the other is not. But
given that the latter is considered allowable and the former not, I would
suggest, along with my beginning suggestion, that BOOST_DYN_LINK be removed
and that BOOST_STATIC_LINK be added to coerce the creation of a static
library when linking to the DLL version of the RTL.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk