Subject: Re: [boost] Boost 1.57 hot-out-of-Git fails to compile for Windows Phone
From: Jürgen Hunold (jhunold_at_[hidden])
Date: 2014-12-04 13:37:46
it is a change in Boost.Context which is causing this.
Am Mittwoch, 3. Dezember 2014, 15:06:39 schrieb Moshe Rubin:
> I cloned Boost 1.57 from GitHub, intending to run b2 with the appropriate
> options to build libraries for Windows Phone. I understand that Steven
> Gates's pull requests for Windows Phone have already been merged in.
> Running the appropriate "b2" command fails with an error message. Can you
I think I have a workaround. See below.
> Here are the steps I took (I'm running MSVC 2013, so I've got all required
> libs etc.):
> (*) Clone Boost 1.57 from GitHub
> (*) cd to the boost folder
> (*) Execute "bootstrap"
> (*) Execute "b2 headers"
> (*) Execute "b2 toolset=msvc-12.0 windows-api=phone architecture=arm
> link=static variant=debug debug-symbols=on debug-store=database stage"
Looks fine and used to work until last week.
> I get the following output:
> (1) Why are the first three statements duplicated for windows-api=phone?
The hardlinks issue is a red herring.
> (2) Why does <warnings> differ between them?
No idea, but does not matter
> (3) Where in Boost.Build is this generated?
By Boost.Context's Jamfile.
> (4) How can I solve the problem and move forward?
Add "address-model=32" to your commandline.
Since sometime last week, Boost.Context depends on Boost.System.
Unfortunately, Boost.Context has to explicitly calculate the <address-model>
and <architecture> properties in order to select the assembler needed, as
those properties have no default value (yet).
It so happens that Boost.System is once requested without those properties and
a second time with them. And the <layout> rule is asked to build both target
with the same effective name in stage/lib. => clash.
So explicitly specifying the properties leads to the right solution.
I cross-mail this to the Boost.Build list to see if someone has a solution.
-- * Dipl.-Math. Jürgen Hunold ! * voice: ++49 4257 300 ! Fährstraße 1 * fax : ++49 4257 300 ! 31609 Balge/Sebbenhausen * jhunold_at_gmx.eu ! Germany