During bootstrap, libgcj builds fine. However, the first time something is linked against it (that would be jv-convert), linker complains there are undefined references in libgcj.so. They look like standard system calls and C library functions with "@SUNW_x.y" appended (x.y being version, like 0.7 or 0.9).
Configure line: ../configure --with-cpu=ultrasparc --with-tune=ultrasparc --disable-nls --with-gmp=/usr/local --with-mpfr=/usr/local --with-gnu-ld --with-gnu-as --with-ld=/usr/local/bin/ld --with-as=/usr/local/bin/as --enable-java-awt=xlib --with-x --enable-languages=c,ada,c++,f95,java,objc Bootstraping using gnat-3.15p (probably not relevant, this is quite far into the bootstrap when all native compiler are already built). Versions of ld and as: $ ld -v GNU ld version 2.16 $ as -v GNU assembler version 2.16 (sparc-sun-solaris2.11) using BFD version 2.16 Error: /bin/sh ./libtool --tag=GCJ --mode=link /usr/local/tmp/gcc/gcc/gcj -B/usr/local/tmp/gcc/gcc/ -B/usr/local/sparc-sun-solaris2.11/bin/ -B/usr/local/sparc-sun-solaris2.11/lib/ -isystem /usr/local/sparc-sun-solaris2.11/include -isystem /usr/local/sparc-sun-solaris2.11/sys-include -m64 -L/usr/local/tmp/gcc/sparc-sun-solaris2.11/sparcv9/libjava -g -O2 -m64 -m64 -o jv-convert --main=gnu.gcj.convert.Convert -rpath /usr/local/lib/sparcv9 -R /usr/local/lib/sparcv9 -shared-libgcc -L/usr/local/tmp/gcc/sparc-sun-solaris2.11/sparcv9/libjava/.libs libgcj.la /usr/local/tmp/gcc/gcc/gcj -B/usr/local/tmp/gcc/gcc/ -B/usr/local/sparc-sun-solaris2.11/bin/ -B/usr/local/sparc-sun-solaris2.11/lib/ -isystem /usr/local/sparc-sun-solaris2.11/include -isystem /usr/local/sparc-sun-solaris2.11/sys-include -m64 -g -O2 -m64 -m64 -o .libs/jv-convert --main=gnu.gcj.convert.Convert -shared-libgcc -L/usr/local/tmp/gcc/sparc-sun-solaris2.11/sparcv9/libjava -L/usr/local/tmp/gcc/sparc-sun-solaris2.11/sparcv9/libjava/.libs ./.libs/libgcj.so -L/usr/local/tmp/gcc/sparc-sun-solaris2.11/sparcv9/libstdc++-v3/src -L/usr/local/tmp/gcc/sparc-sun-solaris2.11/sparcv9/libstdc++-v3/src/.libs -L/usr/local/tmp/gcc/gcc/sparcv9 -L/usr/local/tmp/gcc/gcc -L/usr/local/sparc-sun-solaris2.11/bin -L/usr/local/sparc-sun-solaris2.11/lib -L/usr/local/lib/../sparc-sun-solaris2.11/lib -L/usr/ccs/bin/sparcv9 -L/usr/ccs/bin -L/usr/ccs/lib/sparcv9 -L/usr/ccs/lib -L/usr/local/lib -L/lib/sparcv9 -L/usr/lib/sparcv9 -lgcc_s -lgcc_s -lpthread -lrt -ldl -lgcc_s -lgcc_s -Wl,--rpath -Wl,/usr/local/lib/sparcv9 ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' ./.libs/libgcj.so: undefined reference to [EMAIL PROTECTED]' collect2: ld returned 1 exit status make[5]: *** [jv-convert] Error 1 make[5]: Leaving directory `/usr/local/tmp/gcc/sparc-sun-solaris2.11/sparcv9/libjava' make[4]: *** [all-recursive] Error 1 make[4]: Leaving directory `/usr/local/tmp/gcc/sparc-sun-solaris2.11/sparcv9/libjava' make[3]: *** [multi-do] Error 1 make[3]: Leaving directory `/usr/local/tmp/gcc/sparc-sun-solaris2.11/libjava' make[2]: *** [all-multi] Error 2 make[2]: Leaving directory `/usr/local/tmp/gcc/sparc-sun-solaris2.11/libjava' make[1]: *** [all-target-libjava] Error 2 make[1]: Leaving directory `/usr/local/tmp/gcc' make: *** [bootstrap] Error 2 -- Summary: linking against libgcj results in strange unresolved symbols Product: gcc Version: 4.0.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: alex at milivojevic dot org GCC build triplet: sparc-sun-solaris2.11 GCC host triplet: sparc-sun-solaris2.11 GCC target triplet: sparc-sun-solaris2.11 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26014