Boost logo

Boost :

Subject: Re: [boost] [atomic] building with --layout=system, mingw, bug #7482
From: Jürgen Hunold (jhunold_at_[hidden])
Date: 2013-01-04 08:46:02

Hi Tim,

-------- Original-Nachricht --------
> Datum: Thu, 03 Jan 2013 23:20:05 +0100
> Von: Tim Blechmann <tim_at_[hidden]>
> An: boost_at_[hidden]
> Betreff: [boost] [atomic] building with --layout=system, mingw, bug #7482

> hi,
> i need some help with resolving issue #7482: for some reason it seems to
> build a static libboost_atomic, although it has to be a shared library.

Well, static build is default in windows. But link=shared works.
> could someone with more insights in this platform have a look, what's
> going wrong (and why the library is static)? unfortunately i neither
> have access to mingw, nor am i too familiar with the boost build
> infrastructure ...

This is not a Boost.Atomic issue.
The problem is that --layout=system is broken on Windows. Rationale:
Boost.Build (in $BOOST_ROOT/boostcpp.jam) defaults to build both release and debug variants of each library on Windows. Requiring system layout ends up with the _same_ name for the release and debug libraries on Windows. This happens for msvc too. This triggers the error reported in #7482. Explicitly specifying "--layout=system release" or "--layout=system debug" will make the problem go away. I'm not sure how/if this problem can be intercepted in boostcpp.jam

You should be able to reproduce this on Linux by requesting both debug and release variants with "--layout=system debug,release".

Hope this helps,

Yours Jürgen

* Dipl.-Math. Jürgen Hunold  !
* voice: 0049 4257 300       ! Fährstraße 1
* fax  : 0049 4257 300       ! 31609 Balge/Sebbenhausen
* mobil: 0049 178 186 1566   ! Germany

Boost list run by bdawes at, gregod at, cpdaniel at, john at