Subject: Re: Annoucement: GCC-3.4.0 binary release candidate
From: "Gerrit P. Haase" <[email-masked]>
To: Tim Prince <[email-masked]>
Cc: "Hans Horn" <[email-masked]>, [email-masked], [email-masked]
Date: Sun, 6 Jun 2004 21:05:45 +0200

Hello Tim,

At 2004-06-06 16:44 you wrote:

> At 04:38 AM 6/6/2004, Gerrit P. Haase wrote:

>>Hello Hans,
>>
>> > I'd like to give this one a test drive! Is it possible to use it under the
>> > cygwin gcc frontend (i.e. gcc -mno-cygwin) ??
>> > Or do I need to wait for the cygwin folks to catch up (which may take an
>> > eternity and a half :-)?
>>
>>Please try to build gcc-3.3.3 or gcc-3.4.0 (including ALL languages)
>>and if it succeeds, send me your patches!
>>
>>
>>Gerrit
>>--
>>=^..^=

> I've never seen instructions on where to get the special cygwin patches,
> let alone mingw.  The public releases up through the latest 3.3.4 build and
> pass testsuite fine on cygwin.  I suppose the few minor changes since the
> supported versions aren't sufficient to motivate anyone to produce and
> verify the cygwin patches.  3.4.0 is OK, except that there is no gnu way to
> bootstrap ada, and the pch feature has not been ported to cygwin. Current
> 3.4.1 exposes an internal error in g++ when I attempt to build libgcj.

There was a branch for Cygwin/MinGW at version 3.3.1/3.3.2,
(called cygming33x), it includes some MinGW exclusive fixes, some
backported patches from HEAD and some MinGW/Cygwin specials to
enable the Cygwin gcc version to use the Windows API and produce
Cygwin independant binaries (-mno-cygwin and -mwin32 switches).

This branch is also the version which the latest release of gcc for
Cygwin (3.3.1-3) is based on.

3.4.0: the first build finished, but I got nearly 900 FAILS for the
libjava testsuite, every following build of libjava even failed to
finish with linking errors when building jv-convert.exe with a longer
list of undefined references.  As I tried to build from vanilla
3.4.0 sources because I thought, some of the MinGW/Cygwin exclusive
extensions may have broken s.th. I saw the 900 FAILS which is about 10
times more FAIL than you reported.

3.3.3/3.3.4: I tried to build 3.3.3 instead of 3.4.0, now I got this
error which was reported to be fixed somewhere in 2002:

sh ./libtool --tag=GCJ --mode=link /gcc/gcc-3.3.3/gcc-3.3.3-1/.build/gcc/gcj -B/gcc/gcc-3.3.3/gcc-3.3.3-1/.build/i686-pc-cygwin/libjava/ -B/gcc/gcc-3.3.3/gcc-3.3.3-1/.build/gcc/ -L/gcc/gcc-3.3.3/gcc-3.3.3-1/.build/i686-pc-cygwin/libjava -ffloat-store -g -O2 -s -Wl,--stack=0x00800000 -o jv-convert.exe --main=gnu.gcj.convert.Convert -rpath /usr/lib/. -shared-libgcc   -L/gcc/gcc-3.3.3/gcc-3.3.3-1/.build/i686-pc-cygwin/libjava/.libs libgcj.la
/gcc/gcc-3.3.3/gcc-3.3.3-1/.build/gcc/gcj -B/gcc/gcc-3.3.3/gcc-3.3.3-1/.build/i686-pc-cygwin/libjava/ -B/gcc/gcc-3.3.3/gcc-3.3.3-1/.build/gcc/ -ffloat-store -g -O2 -s -Wl,--stack=0x00800000 -o jv-convert.exe --main=gnu.gcj.convert.Convert -shared-libgcc  -L/gcc/gcc-3.3.3/gcc-3.3.3-1/.build/i686-pc-cygwin/libjava -L/gcc/gcc-3.3.3/gcc-3.3.3-1/.build/i686-pc-cygwin/libjava/.libs ./.libs/libgcj.a -L/gcc/gcc-3.3.3/gcc-3.3.3-1/.build/i686-pc-cygwin/libstdc++-v3/src -L/gcc/gcc-3.3.3/gcc-3.3.3-1/.build/i686-pc-cygwin/libstdc++-v3/src/.libs -lz -L/gcc/gcc-3.3.3/gcc-3.3.3-1/.build/gcc -L/usr/i686-pc-cygwin/bin -L/usr/lib/gcc-lib/i686-pc-cygwin/3.3.3 -L/usr/lib/gcc-lib/i686-pc-cygwin/3.3.3/../../.. -lgcc -lcygwin -luser32 -lkernel32 -ladvapi32 -lshell32 -lgcc -Wl,--rpath -Wl,/usr/lib/.
./.libs/libgcj.a(String.o)(.text+0x650): In function `_ZN4java4lang6String6lengthEv':
/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/java/lang/String.java:193: multiple definition of `java::lang::String::length()'
./.libs/libgcj.a(prims.o)(.text$_ZN4java4lang6String6lengthEv+0x0):prims.cc: first defined here
./.libs/libgcj.a(natThread.o)(.text$_ZN4java4lang11ThreadGroup7getNameEv+0x0):natThread.cc: multiple definition of `java::lang::ThreadGroup::getName()'
./.libs/libgcj.a(ThreadGroup.o)(.text+0x220):/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/java/lang/ThreadGroup.java:142: first defined here
./.libs/libgcj.a(natThread.o)(.text$_ZN4java4lang11ThreadGroup14getMaxPriorityEv+0x0):natThread.cc: multiple definition of `java::lang::ThreadGroup::getMaxPriority()'
./.libs/libgcj.a(ThreadGroup.o)(.text+0x260):/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/java/lang/ThreadGroup.java:167: first defined here
./.libs/libgcj.a(Thread.o)(.text+0xf0): In function `_ZN4java4lang6Thread7getNameEv':
/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/java/lang/Thread.java:61: multiple definition of `java::lang::Thread::getName()'
./.libs/libgcj.a(natThread.o)(.text$_ZN4java4lang6Thread7getNameEv+0x0):natThread.cc: first defined here
./.libs/libgcj.a(Thread.o)(.text+0x100): In function `_ZN4java4lang6Thread11getPriorityEv':
/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/java/lang/Thread.java:66: multiple definition of `java::lang::Thread::getPriority()'
./.libs/libgcj.a(posix-threads.o)(.text$_ZN4java4lang6Thread11getPriorityEv+0x0):posix-threads.cc: first defined here
./.libs/libgcj.a(Thread.o)(.text+0x110): In function `_ZN4java4lang6Thread14getThreadGroupEv':
/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/java/lang/Thread.java:71: multiple definition of `java::lang::Thread::getThreadGroup()'
./.libs/libgcj.a(natThread.o)(.text$_ZN4java4lang6Thread14getThreadGroupEv+0x0):natThread.cc: first defined here
./.libs/libgcj.a(Thread.o)(.text+0x170): In function `_ZN4java4lang6Thread7isAliveEv':
/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/java/lang/Thread.java:90: multiple definition of `java::lang::Thread::isAlive()'
./.libs/libgcj.a(natThread.o)(.text$_ZN4java4lang6Thread7isAliveEv+0x0):natThread.cc: first defined here
./.libs/libgcj.a(Thread.o)(.text+0x180): In function `_ZN4java4lang6Thread8isDaemonEv':
/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/java/lang/Thread.java:95: multiple definition of `java::lang::Thread::isDaemon()'
./.libs/libgcj.a(posix-threads.o)(.text$_ZN4java4lang6Thread8isDaemonEv+0x0):posix-threads.cc: first defined here
./.libs/libgcj.a(natMethod.o)(.text$_ZN4java4lang7Boolean12booleanValueEv+0x0):natMethod.cc: multiple definition of `java::lang::Boolean::booleanValue()'
./.libs/libgcj.a(Boolean.o)(.text+0x70):/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/java/lang/Boolean.java:126: first defined here
./.libs/libgcj.a(Character.o)(.text+0x1940): In function `_ZN4java4lang9Character9charValueEv':
/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/java/lang/Character.java:1444: multiple definition of `java::lang::Character::charValue()'
./.libs/libgcj.a(natMethod.o)(.text$_ZN4java4lang9Character9charValueEv+0x0):natMethod.cc: first defined here
./.libs/libgcj.a(natVMSecurityManager.o)(.text$_ZN3gnu3gcj7runtime10StackTrace6lengthEv+0x0):natVMSecurityManager.cc: multiple definition of `gnu::gcj::runtime::StackTrace::length()'
./.libs/libgcj.a(StackTrace.o)(.text+0x90):/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/gnu/gcj/runtime/StackTrace.java:138: first defined here
./.libs/libgcj.a(natField.o)(.text$_ZN4java4lang7reflect5Field17getDeclaringClassEv+0x0):natField.cc: multiple definition of `java::lang::reflect::Field::getDeclaringClass()'
./.libs/libgcj.a(Field.o)(.text+0x80):/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/java/lang/reflect/Field.java:50: first defined here
./.libs/libgcj.a(Locale.o)(.text+0x13a0): In function `_ZN4java4util6Locale11getLanguageEv':
/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/java/util/Locale.java:386: multiple definition of `java::util::Locale::getLanguage()'
./.libs/libgcj.a(natString.o)(.text$_ZN4java4util6Locale11getLanguageEv+0x0):natString.cc: first defined here
./.libs/libgcj.a(natPlainSocketImpl.o)(.text$_ZN4java3net17InetSocketAddress7getPortEv+0x0):natPlainSocketImpl.cc: multiple definition of `java::net::InetSocketAddress::getPort()'
./.libs/libgcj.a(InetSocketAddress.o)(.text+0x320):/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/java/net/InetSocketAddress.java:173: first defined here
./.libs/libgcj.a(natPlainSocketImpl.o)(.text$_ZN4java3net17InetSocketAddress10getAddressEv+0x0):natPlainSocketImpl.cc: multiple definition of `java::net::InetSocketAddress::getAddress()'
./.libs/libgcj.a(InetSocketAddress.o)(.text+0x300):/gcc/gcc-3.3.3/gcc-3.3.3-1/libjava/java/net/InetSocketAddress.java:157: first defined here
collect2: ld returned 1 exit status

Gerrit
-- 
=^..^=

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/