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  ! juergen.hunold_at_gmx.eu
* 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 acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk