Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2005-07-13 09:31:04


Joaquín Mª López Muñoz <joaquin_at_[hidden]> writes:

> David Abrahams ha escrito:
>
>> Does anyone have a clue about this? Other toolsets, including
>> gcc-2.95.3, gcc-3.3.3, and gcc-4.0.0 all work fine.
>>
>> "/usr/local/gcc-3.4.4/bin/g++.exe" -Wall -ftemplate-depth-100 -O0 -fno-inline -g -DBOOST_ALL_NO_LIB=1 -I"..\..\.." -c -o "..\..\..\bin.v2\libs\parameter\test\sfinae.test\gcc-3.4.4\debug\sfinae.o" "sfinae.cpp"
>>
>> "/usr/local/gcc-3.4.4/bin/g++.exe" -o "..\..\..\bin.v2\libs\parameter\test\sfinae.test\gcc-3.4.4\debug\sfinae.exe" "..\..\..\bin.v2\libs\parameter\test\sfinae.test\gcc-3.4.4\debug\sfinae.o" -g
>>
>> /usr/lib/gcc/i686-pc-cygwin/3.4.4/libstdc++.a(eh_terminate.o):: undefined reference to `___w32_sharedptr_terminate'
>
> [...]
>
> Google yields this:
>
> http://gcc.gnu.org/ml/gcc/2004-04/msg00613.html
>
> Click down the thread for an explanation and fix of the problem, maybe
> it has to do with yours.

Been there. That's not the problem.

The problem is that BBv2's gcc support leaves out something crucial
that's present in v1: adding the GCC installation's library path to
the link path explicitly. In other words, the link command needs to
be:

  /usr/local/gcc-3.4.4/bin/g++ -L/usr/local/gcc-3.4.4/lib ...whatever...

As it turns out, this started to break sometime after I ran the Cygwin
setup program and it replaced my previous default g++ (3.3.3) with a
new version 3.4.4.

There's a discussion of these issues in
http://thread.gmane.org/gmane.comp.lib.boost.build/8887, but I fear it
is still unresolved. Your ball, Volodya.

-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk