Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2003-08-14 09:56:36

Samuel Krempp <krempp_at_[hidden]> writes:

> As said in the "Re: Release of 1.30.2 imminent" thread,
> recent regressions for intel-linux-7.1 on ios_state and format
> (eg
> report weird linking erros (due to pthread symbols not found).
> In fact, ios_state and format are the only boost libs with static-linked
> tests, and I suspect this triggers a problem with the intel-linux
> toolset.
> I can solve the errors by adding "<threads>multi" as a build
> requirement, but I'd prefer not.
> If I change format's test Jamfile to use dynamic linking, intel-linux
> links (and runs) ok.
> but then metrowerks would fail because it supports <locale> only with
> static-linking.
> I see 2 ways out, but dont know how to actually implement them, so
> either :
> 1. someone understands the situation with intel-linux and fixes this
> toolset
> 2. soemeone tells me how to have a build requirement for a specific
> compiler in a Jamfile, so as to use static-linking only for metrowerks.
> solution 2 is enough to work around the intel-linux problem for now, but
> it would be good to fix the intel-linux toolset static-linking problem.
> Oh, and would it be important to fix that before releasing 1.30.2, or
> can it just wait ?

I think we should fix it.

The fix is pretty easy; just add


to the requirements. Alternatively, you could use something like:

local rtlink = <runtime-link>static
if $(NT)
   rtlink = <runtime-link>dynamic

and then add $(rtlink) to the target requirements. This is a bit more
reliable because we have a proliferation of very specific toolset
names at this point (i.e. it might not match "metrowerks" or

Please let me know if it works out,

Dave Abrahams
Boost Consulting

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