Boost logo

Boost-Build :

Subject: Re: [Boost-build] Build error when adding Boost libraries to own projects
From: Jurko Gospodnetić (jurko.gospodnetic_at_[hidden])
Date: 2012-07-30 06:41:56


   Hi.

> the error should be reproducible by simply calling bjam in the
> projects root directory. (Tested on Ubuntu 11.10 and Win7)

   Reproduced here on Win7 and I do not thing the problem is OS related.

   In my case the problem seems to be caused by the <warnings> property
being specified with different values when using the //boost/system
target (project) from //boost/chrono and //boost/filesystem.

   //boost/filesystem uses it with the default value ('on') while
//boost/chrono uses it by explicitly specifying <warnings>all.

   You can work around this specific problem by explicitly specifying
the <warnings>all property for your whole project. Simply add something
like 'project xxx : requirements <warnings>all ;' to your main
jamroot.jam script.

   Or, as you stated earlier, you can use prebuilt Boost library
targets. That is what we do (since it improves our build times) so I
never personally ran into this issue before.

   When I get the time next, I'll look into these are being reported as
ambiguous property sets since the <warnings> feature should be declared
as 'incidental', i.e. as 'not having an impact on the final built
executable' and should therefore be ignored when deciding whether two
virtual-targets (Boost Build lingo for 'an actual target file with an
accompanying property set') are equivalent.

   Hope this helps.

   Best regards,
     Jurko Gospodnetić


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