This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE:Bootstrap FAILURE: gcc-3.4.0-20040406 prerelease


 From: "Stephan T. Lavavej"
 
> I can successfully bootstrap 3.3.3 on MinGW/MSYS (using MinGW patched
> source).  When I bootstrap the gcc-3.4.0-20040406 prerelease (using FSF
> source), the bootstrap finishes cleanly, and g++ will print out its
> --version, but it fails at compiling Hello, World.
> 
> C:\Temp\gcc>g++ --version
> g++ (GCC) 3.4.0 20040407 (prerelease)
> Copyright (C) 2004 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> 
> 
> C:\Temp\gcc>g++ -Wall -W hello.cc -o hello340.exe
> /mingw/lib/libstdc++.a(eh_throw.o)(.text+0x10):eh_throw.cc: undefined
> reference to `__w32_sharedptr_unexpected'


It looks like you are linking against the libstdc++.a from an older
(modified by mingw local patches) version of gcc.
The symbol __w32_sharedptr_unexpected does not occur in FSF  sources for
3.4.0.

I suspect that if you change PATH so that the relocatability magic finds
the new (3.4.0) gcc driver before it finds your old one you will link
against the correct 3.4.0 libstdc++.a.  In your example, simply, putting
'.' at the start of your path (since you are running g++ from the 3.4.0
bin directory) should do it.

Or, you could build with --enable-win32-registry and edit the registry
rather than changing PATH.

Danny


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]