Subject: Re: [boost] [atomic] [release] possible linking problem with atomic
From: Edward Diener (eldiener_at_[hidden])
Date: 2013-01-10 22:08:28
On 1/10/2013 1:17 PM, Andrey Semashev wrote:
> On Thu, Jan 10, 2013 at 9:46 PM, Eric Niebler <eric_at_[hidden]> wrote:
>> Fwd'ed from the users list...
>> On 1/10/2013 9:37 AM, Olivier Tristan wrote:
>>> Don't know if It's suppose to be normal but it looks that the newly
>>> added boost atomic requires linking against a static lib by default.
>>> This seems wrong as this an header only package.
>>> Please note that I'm using a fresh 1.53 beta 1 with no define like
>>> BOOST_ATOMIC_DYN_LINK or BOOST_ALL_DYN_LINK
>>> BOOST_DYN_LINK is greyed out when I open the header in the editor so
>>> it doesn't look like to be defined.
>>> (Visual c++ 2005 SP1)
>>> Am I missing something here ?
>>> Thanks !
> As I understand, static libs are the default on Windows. So unless
> specified otherwise, Boost.Atomic follows other libs in this regard.
I highly doubt that "static libs are the default on Windows", however
you deem to determine such a thing, from my own practical experience as
a developer and end-user.
Nearly all applications for Windows on which I have worked as well all
major applications which I have used are distributed as applications
with DLLs rather than as monolithic applications built by linking in
static libraries. Needless to say the MS .Net framework as well as the
new Windows 8 run-time framework is built around DLLs ( or assemblies )
rather than static libraries.
In Visual Studio, easily the most popular Windows IDE, the VC++ modules
all link by default to the DLL version of libraries ( RTL, MFC, ATL etc.
etc. ). Of course you can change this but the default is DLLs, not
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk