Boost logo

Boost :

Subject: Re: [boost] boost include directory question
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2018-07-21 17:09:59


On 07/21/2018 10:19 AM, Robert Ramey via Boost wrote:
> The current instructions for doing boost development are approximately:
> a) clone the boost super project from github.
> b) invoke b2 headers which does one of:
>     1) creates links in the boost root directory to individual projects
>     2) or copies boost directories from individual libraries into the
> boost root directory.
> depending on whether it is a windows system or other system.

That's not quite correct. b2 tries the following in order:
- symlinks
- junctions (windows only)
- hard-links
- copies

Windows does support symlinks, depending on the
version and permissions. As far as I am aware,
junction+hardlink should work in Vista or later,
so I'm somewhat surprised that you're seeing copies.

Also, if you're only building with b2, (part of)
`b2 headers` is run automatically whenever you build
your tests, so running it explicitly is rarely needed.

> Since I test for both windows and other systems, this is somewhat of a
> pain.

Why is it a pain?

>  In considering my options, I'm wondering if specifying all the
> boost library include directories in the CPLUS_INCLUDE_PATH
> environmental variable (gcc compilers) or INCLUDE (msvc).
> a) Has this been considered before?
> b) Was it considered when the current system was setup?
> c) Is there an reason why it wouldn't be a good idea?

Do you really want to manage 100+ include directories?
It's probably manageable for people who only use b2
to build, but it's a lot more convenient for outside
users to have a single directory.

> Anyone with information on this is free to chime in.  Actually anyone is
> free to chime in.

In Christ,
Steven Watanabe

Boost list run by bdawes at, gregod at, cpdaniel at, john at