|
Boost-Build : |
From: David Abrahams (dave_at_[hidden])
Date: 2004-08-22 16:25:40
Daniel Schlyder <daniel_at_[hidden]> writes:
> Toon Knapen:
>> Since version 1.134 of boost/tools/build/v1/boost-base.jam (created on
>> the 12th of August) the libraries (specified by means of <find-library>
>> in the requirements section of the exe) are sorted lexicographically. On
>> almost all platforms however (windows is an exception I believe) all
>> libraries need to be in a specific order. Until version 1.133 of
>> boost-base.jam the order in the Jamfile was respected in the link-line.
>
>> I tried to understand which modif actually performs this sort but my
>> understanding of bjam language is not sufficient yet ;-(
>
> Found this in gcc-tools.jam:
>
> <quote>
> # for gcc, we repeat all libraries so that dependencies are always resolved
> actions gcc-Link-action bind NEEDLIBS NEEDIMPS
> </quote>
>
> The comment is incorrect. Only NEEDLIBS are repeated; FINDLIBS are not.
> Repeating FINDLIBS would fix linking on GCC. Not sure if this could be
> considered a fix or just an ugly work-around, but I think it would be good to
> add this to remove link order problem completely. Order in requirements section
> wasn't respected fully before this latest bjam change, anyway. For example,
> I've got the following code:
>
> mingw_gcc = mingw gcc ;
> debug_release = debug release ;
> <$(mingw_gcc)><$(debug_release)><find-library>alogg
But this is illegal bjam syntax, so I'm utterly confused. Did you
really copy this out of your Jamfile?
-- Dave Abrahams Boost Consulting http://www.boost-consulting.com
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk