Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-02-02 02:53:02


Hi Reece,

> I am a new user of bjam and Boost.Build on WinXP SP1. I am looking to
> provide Jamfiles for my Boost library I am developing as well as the
> possibility of migrating my own projects to the system.

Great!
\
> [1] I find it useful to write the error messages of a compiler to a text
> file. This is easy to do, e.g.:
> bjam -a > output.txt
>
> The problem comes when using tools that write error messages to stderr
> instead of stdout as only stdout is logged (I'm not sure if this occurs in
> other OSs). The solution I have come up with is to write a program called
> 'grab' that merges the two streams, but it only works on Windows, e.g.:
> grab bjam -a > output.txt

On Unix, it's possible to run

bjam -a > output.txt 2>&1

to get both stderr and stdout.

> I was wondering if any other users have come across this before, or if it
> was possible to merge the two within bjam itself! Are the Boost regression
> tests affected by this, as they filter from stdin the output generated by
> bjam?

To the best of my knowledge, grabbing both stdout and stderr is a tricky
thing, because the most simplistic approach can result in deadlock. So, I'm
not sure it's feasible to handle this in bjam.

> [2] It would be useful to have a section in the documentation on
> configuring the tools, with common errors and solutions. E.g. building
> using Borland C++Compiler 5.5, I get the following error:
>
> borland.link bin\borland\debug\hello.exe bin\borland\debug\hello.rsp
> Fatal: Unable to open file 'C.OBJ'
>
> set "PATH=d:\devel\C++Builder/bin/;%PATH%"
> "d:\devel\C++Builder/bin/bcc32" -v -q -v -v -tWD -tWC -tWR -tWC
> -WM-
> -L"d:\devel\C++Builder/lib" -e"bin\borland\debug\hello.exe"
> @"bin\borland\debug\hello.rsp"
>
> ...failed borland.link bin\borland\debug\hello.exe
> bin\borland\debug\hello.rsp..

I can't guess what's the problem with above? Maybe, you can pack your sample
project and send it to me?

> [3] Is anyone planning on adding support for Metrowerks CodeWarrior?

Rene has already said he's going to to it -- and those are great news.

> [4] How do you tell Build what compilers to use? The command line:
> bjam -sTOOLS=gcc
>
> does not work unless gcc is the first tool in user-config.jam! (Is this me
> being braindead!?)

You'd use

bjam gcc

The "-sTOOLS" syntax is gone in V2.

> [5] How do you add configuration information such as:

> <tools>msvc : <include>d:/devel/PlatformSDK/200210/include

You can add

project
: requirements
<toolset>msvc:<include>d:/devel/PlatformSDK/200210/include
;

to your top-level Jamfile.

> <tools>gcc : <language>cpp : <lib>/lib/libstdc++.a

I'm not sure about this one: we don't have 'language' feature. What is the
reason for adding std++ explicitly -- I though g++ should take care of this
automatically.

>
> into Jamrules?

Note that V2 does not have "Jamrules". There's project-root.jam for the same
purpose.

HTH,
Volodya

 


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