Boost logo

Boost-Build :

Subject: Re: [Boost-build] Questions from a new user
From: JP Cimalando (jp-dev_at_[hidden])
Date: 2017-09-25 09:18:03


On Thu, 7 Sep 2017 10:14:06 -0500
Rene Rivera via Boost-build <boost-build_at_[hidden]> wrote:

> >
> > using gcc ;
> > using gcc : : i686-w64-mingw32-g++
> > : : <target-os>windows ;
> > using gcc : : x86_64-w64-mingw32-g++
> > : : <target-os>windows <address-model>64 ;
> >
> > "b2 target-os=windows" gets me commands such as
> > "g++" "i686-w64-mingw32-g++" -O3 [....]
> > and the same with "address-model=64" added
> > "g++" "i686-w64-mingw32-g++" "x86_64-w64-mingw32-g++" -O3
> > [...]
>
> Do you get the same results if you use the "develop" b2 version?

Sorry for not answering the message for a while, I have had some health
problems to sort out. To get back on topic:
Yes, it's identical with the development version.
I've found that b2 can select multiple GCCs at once if more than one
meet the requirements for selection. That's because the compiler
command is defined as a toolset flag.

In the example above, b2 target-os=windows was able to match all three
of the sets of requirements.
However when I write all requirements explicitly the problem disappears,
eg..

using gcc : : g++ : <compileflags>"-m64" <linkflags>"-m64" :
<target-os>linux <address-model>64 ;
using gcc : : g++ : <compileflags>"-m32" <linkflags>"-m32" :
<target-os>linux <address-model>32 ;
using gcc : : i686-w64-mingw32-g++ : : <target-os>windows
<address-model>32 ;
using gcc : : x86_64-w64-mingw32-g++ : : <target-os>windows
<address-model>64 ;

But then I also have to write them all explicitly on the b2 command
line.


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