From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-02-02 02:53:02
> 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.
>  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
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.
>  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
> -L"d:\devel\C++Builder/lib" -e"bin\borland\debug\hello.exe"
> ...failed borland.link bin\borland\debug\hello.exe
I can't guess what's the problem with above? Maybe, you can pack your sample
project and send it to me?
>  Is anyone planning on adding support for Metrowerks CodeWarrior?
Rene has already said he's going to to it -- and those are great news.
>  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!?)
The "-sTOOLS" syntax is gone in V2.
>  How do you add configuration information such as:
> <tools>msvc : <include>d:/devel/PlatformSDK/200210/include
You can add
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
> into Jamrules?
Note that V2 does not have "Jamrules". There's project-root.jam for the same
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