Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2006-12-10 12:20:32

"Robert Ramey" <ramey_at_[hidden]> writes:

>> You're not following the guide.
>> bjam --v2 toolset=msvc-7.1
>> ^^^^^^^^
>> will work.
> Not for me. Here is what I get:
> warning: Python location is not configured
> warning: the Boost.Python library won't be built
> Building Boost.Regex with the optional Unicode/ICU support disabled.
> Please refer to the Boost.Regex documentation for more information
> (and if you don't know what ICU is then you probably don't need it).
> Jamfile.v2:239: in Jamfile</C:/BoostHead>.tag
> rule stage.add-variant-and-compiler unknown in module
> Jamfile</C:/BoostHead>.
> .. a bunch of other stuff
> its not clear to me how something like that could work. How does the system
> know on what path my compiler is installed?

Magic :)

No, seriously: if you're on windows, most compilers install
information about their locations in the Registry, which the system
will use to look them up. Otherwise, there are default installation
locations that we guess at. Only in the rarest of cases do we ever
need to be told very much about the compiler. On *nix the compilers
are almost always in the PATH, and when they're not, there are default
locations to use, and there are command-line options that can be used
to deduce the compiler versions. Look through some of the toolsets in
tools/build/v2/tools/ to see what I mean.

> also
> suggests to me that the following syntax should work
> bjam msvc release some_target

Yeah, on the RC branch, and *if* you've got your user-config.jam set
up. But you really should try to draw your conclusions from
documentation instead.

> which I take to mean that the following should work
> bjam --v2 msvc release some_target

In the HEAD, until I change that, yes, --v2 is needed.

> and which would lead me to expect that the following should work
> bjam --v2 msvc
> which doesn't work.
> I've studied the "getting started" as well as the boost build documentation
> and I can't see how one is expected to specify all the toolsets he uses.
> FYI in my case I want to use the following:
> msvc 6.5
> msvc 7.1
> msvc 8.0
> bcc 5.51
> bcc 5.64
> comeau
> gcc 3.3
> stlport 5.0
> stlport 4.53
> I expect to find a place - with a syntax to specify it - a set of path names
> for each of the above. If its in the documents it certainly doesn't jump
> out at me.

Well, that's a separate issue from the Getting Started guide. We
don't want people to have to edit a user-config.jam and learn a
special syntax if they only intend to use Boost.Build to create
binaries for use with Visual Studio, for example.

Dave Abrahams
Boost Consulting

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