Hi -
I am trying to build GCC 4.9.4, with originally only GCC 4.4.7, on a Linux RHEL6 (i686) lxc container under x86_64 Centos-7 - so I cloned and built: https://github.com/gcc-mirror/gcc/tree/releases/gcc-4.9 with configure flags: Target: i686-redhat-linux Configured with: ../configure --prefix=/usr/local --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/local/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-gmp=/usr/local --with-mpfr=/usr/local --with-mpc=/usr/local --with-tune=native --with-arch=i686 --build=i686-redhat-linux --enable-serial-configure Thread model: posix gcc version 4.9.4 (GCC) All other compiler components built fine except libjava . I see in : i686-redhat-linux/libjava/classpath/config.log : <QUOTE><LIT> configure:25378: /home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/host-i686-redhat-linux/gcc/gcj -B/home/adm-jason/rpmbuild/BUILD/gcc-releases -gcc-4.9/i686-redhat-linux/libjava/ -B/home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/i686-redhat-linux/libjava/ -B/home/adm-jason/rpmbuild/B UILD/gcc-releases-gcc-4.9/host-i686-redhat-linux/gcc/ -B/usr/local/i686-redhat-linux/bin/ -B/usr/local/i686-redhat-linux/lib/ -isystem /usr/local /i686-redhat-linux/include -isystem /usr/local/i686-redhat-linux/sys-include -C -g -fsource=1.5 -ftarget=1.5 Object.java libgcj failure: gcj linkage error. Incorrect library ABI version detected. Aborting. gcj: internal compiler error: Aborted (program ecj1) 0x8050bd4 execute ../.././gcc/gcc.c:2854 0x8050fa4 do_spec_1 ../.././gcc/gcc.c:4658 0x80527d2 do_spec_2 ../.././gcc/gcc.c:4359 0x8053cef do_spec(char const*) ../.././gcc/gcc.c:4326 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. configure:25381: $? = 4 configure:25385: error: The Java compiler /home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/host-i686-redhat-linux/gcc/gcj -B/home/adm-jason/rp mbuild/BUILD/gcc-releases-gcc-4.9/i686-redhat-linux/libjava/ -B/home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/i686-redhat-linux/libjava/ -B/ home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/host-i686-redhat-linux/gcc/ -B/usr/local/i686-redhat-linux/bin/ -B/usr/local/i686-redhat-linux /lib/ -isystem /usr/local/i686-redhat-linux/include -isystem /usr/local/i686-redhat-linux/sys-include -C -g failed (see config.log, check the CLA SSPATH?) ## ---------------- ## ## Cache variables. ## ## ---------------- ## </LIT></QUOTE> If I move i686-redhat-linux/libjava/Makefile to i686-redhat-linux/libjava/Makefile.orig, and $ echo $'all:\n\t/bin/true\ninstall:\n\t/bin/true\ncheck:\n\t/bin/true' \ > i686-redhat-linux/libjava/Makefile , then 'make DESTDIR=/tmp/$X install' does work and 'make check' does look OK (except Java parts). But I'd like to be able to do a clean build including gcj + Java. I had followed the instructions at: https://github.com/spack/spack/issues/8165 to first get 'ecj1' to build successfully: $ gcj -oecj1 --main=org.eclipse.jdt.internal.compiler.batch.GCCMain \ /usr/share/java/ecj-4.5.2.jar -L/usr/lib/gcc/i686-redhat-linux/4.4.7/ I then copied this ecj1 successfully built to ~/bin, which is in my $PATH. The only gcj + libjava I have is from GCC 4.4.7 - the gcj I run in the above command is the gcj built from GCC 4.9.4 , which does not have its libjava (this is what I am trying and failing to build). The CLASSPATH I had to use to get the above command to work is : /usr/share/java/ecj-4.5.2.jar:/usr/share/java/eclipse-ecj-4.5.2.jar:/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre/lib/jaas.jar:/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre/lib/jce.jar:/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre/lib/jdbc-stdext.jar:/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre/lib/jndi-cos.jar:/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre/lib/jndi-dns.jar:/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre/lib/jndi-ldap.jar:/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre/lib/jndi-rmi.jar:/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre/lib/jndi.jar:/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre/lib/jsse.jar:/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre/lib/sasl.jar:/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre/lib/rt.jar:/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/lib/tools.jar: The repeatable reconfigure command I had to use in i686-redhat-linux/libjava, to get it to attempt to reconfigure classpath, after first failing because it did not have a copy of its source directory's 'libltdl' subdirectory, after I then copied it, was: $ CFLAGS='-g -O2' LDFLAGS='' CPPFLAGS='' CXX='/home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/host-i686-redhat-linux/gcc/xgcc -shared-libgcc -B/home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/host-i686-redhat-linux/gcc -nostdinc++ -L/home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/i686-redhat-linux/libstdc++-v3/src -L/home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/i686-redhat-linux/libstdc++-v3/src/.libs -L/home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/i686-redhat-linux/libstdc++-v3/libsupc++/.libs -B/usr/local/i686-redhat-linux/bin/ -B/usr/local/i686-redhat-linux/lib/ -isystem /usr/local/i686-redhat-linux/include -isystem /usr/local/i686-redhat-linux/sys-include' CXXFLAGS='-g -O2 -D_GNU_SOURCE' CC='/home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/host-i686-redhat-linux/gcc/xgcc -B/home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/host-i686-redhat-linux/gcc/ -B/usr/local/i686-redhat-linux/bin/ -B/usr/local/i686-redhat-linux/lib/ -isystem /usr/local/i686-redhat-linux/include -isystem /usr/local/i686-redhat-linux/sys-include' GCJ='/home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/host-i686-redhat-linux/gcc/gcj -B/home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/i686-redhat-linux/libjava/ -B/home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/host-i686-redhat-linux/gcc/ -B/usr/local/i686-redhat-linux/bin/ -B/usr/local/i686-redhat-linux/lib/ -isystem /usr/local/i686-redhat-linux/include -isystem /usr/local/i686-redhat-linux/sys-include' /home/adm-jason/rpmbuild/BUILD/gcc-releases-gcc-4.9/libjava/configure --cache-file=./config.cache --enable-multilib --prefix=/usr/local --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/local/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-gmp=/usr/local --with-mpfr=/usr/local --with-mpc=/usr/local --with-tune=native --with-arch=i686 --enable-serial-configure --enable-languages=c,ada,c++,fortran,java,lto,objc,obj-c++ --program-transform-name=s,y,y, --disable-option-checking --with-target-subdir=i686-redhat-linux --build=i686-redhat-linux --host=i686-redhat-linux --target=i686-redhat-linux --srcdir=../.././libjava --disable-static That reconfigure, AND the one run by 'make', now fails with the above ICE . Anyone seen this ICE or know of any workarounds ? I would like to get a working version of the latest 4.9 compiler, with C11 & C++11 support, working on an i686 RHEL6 box to which I have just successfully ported a large body of code that previously only compiled with GCC 2.96 and 3.43 . It now compiles with GCC 4.4.7, and I'd like to get it compiling with 4.9.x , with atomics & libsanitizers etc. It'd be nice to be able to just build the 4.9.4 release without this blocker - why should I have to disable Java ? That libjava + gcj might come in useful sometime. Any suggestions how to workaround or fix would be much appreciated. Thank You & Best Regards, Jason