This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Bootstrap FAILURE: gcc-3.4.0-20040406 prerelease
- From: "Stephan T. Lavavej" <stl at caltech dot edu>
- To: "GCC" <gcc at gcc dot gnu dot org>
- Date: Tue, 13 Apr 2004 04:45:23 -0700
- Subject: Bootstrap FAILURE: gcc-3.4.0-20040406 prerelease
- Reply-to: <stl at caltech dot edu>
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'
/mingw/lib/libstdc++.a(eh_throw.o)(.text+0x35):eh_throw.cc: undefined
reference to `__w32_sharedptr_terminate'
/mingw/lib/libstdc++.a(eh_terminate.o)(.text+0xb8):eh_terminate.cc:
undefined reference to `__w32_sharedptr_terminate'
/mingw/lib/libstdc++.a(eh_terminate.o)(.text+0x13a):eh_terminate.cc:
undefined reference to `__w32_sharedptr_terminate'
/mingw/lib/libstdc++.a(eh_terminate.o)(.text+0x1b2):eh_terminate.cc:
undefined reference to `__w32_sharedptr_unexpected'
/mingw/lib/libstdc++.a(eh_terminate.o)(.text+0x1c0):eh_terminate.cc:
undefined reference to `__w32_sharedptr_terminate'
/mingw/lib/libstdc++.a(eh_terminate.o)(.text+0x1e2):eh_terminate.cc:
undefined reference to `__w32_sharedptr_terminate'
/mingw/lib/libstdc++.a(eh_terminate.o)(.text+0x1f2):eh_terminate.cc:
undefined reference to `__w32_sharedptr_unexpected'
C:\Temp\gcc>type hello.cc
#include <iostream>
using namespace std;
int main() {
cout << "Hello, world!" << endl;
}
C:\Temp\gcc>
This is the script I used to bootstrap:
#!/bin/sh
export CFLAGS='-O3 -fomit-frame-pointer -ffast-math'
export CXXFLAGS='-O3 -fomit-frame-pointer -ffast-math'
export LDFLAGS='-s -Wl,--stack=0x00800000'
cd /c/temp/gcc
tar xf gcc-3.4.0-20040406.tar
mv gcc-3.4.0-20040406 src
mkdir build dest
cp -r components/mingw-runtime-3.2/* dest
cp -r components/w32api-2.5/* dest
cd build
../src/configure --prefix=c:/temp/gcc/dest --enable-languages=c,c++
--enable-sjlj-exceptions --enable-threads=win32 --disable-win32-registry
--disable-shared --without-newlib --disable-nls --disable-debug
--disable-checking
make bootstrap
make install
cd ..
rm -rf build src
mv dest gcc-3.4.0-20040406
cd gcc-3.4.0-20040406
rm -rf info man
cd bin
cp gcc.exe cc.exe
cp g++.exe gpp.exe
rm c++.exe gccbug i686-pc-mingw32-*
rm -rf ../lib/gcc/i686-pc-mingw32/3.4.0/install-tools
rm -rf ../libexec/gcc/i686-pc-mingw32/3.4.0/install-tools
rm ../lib/gcc/i686-pc-mingw32/3.4.0/include/README
cd ..
find -name "*.exe" -type f -print -exec strip -s {} ";"
find "(" -name "*.exe" -or -name "*.dll" ")" -type f -print -exec upx --best
{} ";"
Any ideas?
Stephan T. Lavavej
http://nuwen.net