Boost logo

Boost-Build :

From: Rene Rivera (grafik.list_at_[hidden])
Date: 2005-10-16 22:06:45

jleather47 wrote:
> Sorry I have been away for a while. What I would like is how to build
> the following (a simple hello world type sample program):
> d:\cpp\main.cpp
> using Visual Studio 6.0 and .NET 2003. You ask what is in the above
> files but this is exactly what I need to know (and why more than one
> file? How is this better than make?)
> Also what if I have these files in a project:
> d:\cpp\main.cpp
> d:\cpp\module.cpp
> d:\cpp\include\module.h
> I am using bjam.exe version:
> Boost.Jam Version 3.1.11. OS=NT.
> Copyright 1993-2002 Christopher Seiwald and Perforce Software, Inc.
> Copyright 2001 David Turner.
> Copyright 2001-2004 David Abrahams.
> Copyright 2002-2005 Rene Rivera.
> Copyright 2003-2005 Vladimir Prus.
> I down loaded the windows executable which just gives bjam.exe and a
> text license file. Any documentaion I found with the source download
> refers to jam documentation which you told me is no good (that is
> where I got the main: etc. crap I first tried).

The documentation for Boost.Build v1 is at:

And for Boost.Build v2 at:

And for Boost.Jam, which is our extended version of Jam, is included in
the source download, but also available at:

The bjam docs are mostly useful for finding out about the low level bjam
language features. And of course how to build the bjam executable.

> Thank you for your help and time, hopefully I will see how this is
> any easier than make (there are no make-build or makerules or
> makeroot file just makefile (or *.mak) ). I suspect the power is seen
> when used with much larger project.

Yes, the usefulness of those setup files is really apparent when one has
large projects with multiple platforms and various people (i.e.
different machine configuration) working on it. But that said BBv2
attempts to remove the need for most of the files.

At minimum for BBv1 you'll need a boost-build.jam and a Jamfile, plus
all the BBv1 files boost/tools/build/v1/*.jam.

> Finally where can I find the REAL documentaion for bjam.exe NOT jam
> sh*t? (Such as the README refers to jam and
> gives th9is example:
> -> Jam's language is expressive, making Jamfiles (c.f.
> Makefiles)
> compact. Here's a sample:
> Main smail : main.c map.c resolve.c deliver.c
> misc.c parser.y alias.c pw.c headers.c
> scanner.l getpath.c str.c ;
> which, as I stated above you indicated earlier this is not for
> bjam!!??)

Just pointed to it above :-) For future reference, when asking
questions, there are different parts we refer to around here:

1) Perforce/Jam - The combination of the Perforce built in build system
and the jam executable.

2) Jam - Just the Perforce/Jam behaving jam executable.

3) Boost.Jam, aka bjam - The Boost extended Jam executable.

4) Boost.Build v1, aka BBv1 - The Boost build system, version 1, built
on top of bjam. This is in the Boost distribution in the tools/build/v1

5) Boost.Build v1, aka BBv2 - The Boost build system, version 2, built
on top of bjam. Like v1 it has its own directory in the distribution at
tools/build/v2. But it is also available standalone as the Boost.Build
releases in the SF files downloads. And there's a snapshot done daily
AFAIK, which you can get from the BBv2 doc page.

-- Grafik - Don't Assume Anything
-- Redshift Software, Inc. -
-- rrivera/ - grafik/
-- 102708583/icq - grafikrobot/aim - Grafik/

Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at