Boost logo

Boost :

Subject: Re: [boost] Directory structure not quite right yet?
From: Peter Dimov (lists_at_[hidden])
Date: 2015-01-01 16:02:16


> I say that -I C:\boost-1.57.0\include is better and more consistent with
> expectations.

In addition, it also makes more sense even on its own. It's more consistent
for "b2 headers" to create a "virtual" directory $BOOST/include from the
contents of $BOOST/libs/*/include; putting the contents of
$BOOST/libs/*/include into $BOOST doesn't seem right.

This would have been obvious if we had headers in libs/*/include, but since
these directories always have their headers in a boost/ subdirectory, "b2
headers" puts nothing directly into $BOOST, so it works fine. Still, I can't
think of any reason of insisting upon the current structure.

Yes, "b2 install" will put things in their proper place (on Linux), and yes,
even without "b2 install" I can easily symlink /usr/include/boost to
$BOOST/boost (on Linux), so it doesn't actually hurt (on Linux).

On Windows, one typical use is to unpack the Boost distribution into its
final location and just b2 stage (without b2 install). Which works fine, and
b2 then says, please add $BOOST to your include path and $BOOST/stage/lib to
your library path. Which also works fine, except that first thing should, in
my opinion, be $BOOST/include.

What are the benefits of not putting the headers into include/? None as far
as I can see.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk