A mainline bootstrap as of 20070618 on Solaris 10/x86 with the bundled gas 2.15 fails to link libgcj.so:
ld: fatal: relocation error: R_386_GOTOFF: file java/.libs/process-Posix.o: symbol java::lang::PosixProcess::queueLock: relocation must bind locally collect2: ld returned 1 exit status make[3]: *** [libgcj.la] Error 1 Performing the same link on Solaris 11 gives ld: fatal: relocation error: R_386_GOTOFF: file java/.libs/process-Posix.o: symbol java::lang::PosixProcess::queueLock: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file java/.libs/process-Posix.o: symbol java::lang::PosixProcess::queueLock: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file java/.libs/process-Posix.o: symbol java::lang::PosixProcess::processManager: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file java/.libs/process-Posix.o: symbol java::lang::PosixProcess::queueLock: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file java/.libs/process-Posix.o: symbol java::lang::PosixProcess::processManager: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file java/.libs/process-Posix.o: symbol java::lang::PosixProcess::processManager: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file java/.libs/process-Posix.o: symbol java::lang::PosixProcess::processManager: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file java/.libs/process-Posix.o: symbol java::lang::PosixProcess::processManager: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file java/.libs/process-Posix.o: symbol java::lang::PosixProcess::queueLock: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file java/.libs/process-Posix.o: symbol java::lang::PosixProcess::processManager: a GOT relative relocation must reference a local symbol collect2: ld returned 1 exit status I'm currently investigating if using the native /usr/ccs/bin/as, gas 2.17 or gld 2.17 makes a difference. Environment: System: SunOS erebus 5.11 snv_60 i86pc i386 i86pc Architecture: i86pc host: i386-pc-solaris2.10 build: i386-pc-solaris2.10 target: i386-pc-solaris2.10 configured with: /vol/gcc/src/gcc/configure --prefix=/vol/gcc --with-local-prefix=/vol/gcc --disable-nls --with-gnu-as --with-as=/usr/sfw/bin/gas --disable-multilib --with-gmp=/vol/gcc --with-mpfr=/vol/gcc --enable-languages=c,c++,fortran,java,objc,ada --disable-libmudflap How-To-Repeat: Bootstrap mainline as described above. -- Summary: Linking libgcj.so fails on Solaris 10/x86 Product: gcc Version: unknown Status: UNCONFIRMED Severity: critical Priority: P2 Component: libgcj AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ro at techfak dot uni-bielefeld dot de GCC build triplet: i386-pc-solaris2.10 GCC host triplet: i386-pc-solaris2.10 GCC target triplet: i386-pc-solaris2.10 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32462