http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50042
Bug #: 50042 Summary: bootstrap step fails while compiling GCC 4.0.2 on AIX 6.1 TL-05 SP-2 using XLC 11.1.0.0 Compiler Classification: Unclassified Product: gcc Version: 4.0.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassig...@gcc.gnu.org ReportedBy: murt...@us.ibm.com I am trying to compile GCC 4.0.2 using xlc 11.1.0.0 on AIX 6.1 TL-05 SP-2. config.guess shipped with 4.0.2 was distribution was returning incorrect value $ ./config.guess rs6000-ibm-aix I replaced it with the version of config.guess shipped with automake-1.11 . the new script would return the correct value $ ./config.guess powerpc-ibm-aix6.1.0.0 I am invoking the following command: export pct="%" export RUNTIME="$(date +${pct}Y${pct}m${pct}d-${pct}H${pct}M${pct}S)" export CONFIG_SHELL=/usr/bin/bash export TOPDIR=/work export SRCDIR=${TOPDIR}/gcc-4.0.2 export OBJSRC=${TOPDIR}/objsrc-gcc-4.0.2 export LOGFILE=${TOPDIR}/logs/`basename $0`${1}-log-${RUNTIME} export PREFIX=/opt/web/gcc-4.0.2-bs-vac-11.1.0.0 export COMP_DIR="/usr/vac" export CC="${COMP_DIR}/bin/cc" { echo "START: `date`" echo "=========================================" if [[ ${PWD} != "${OBJSRC}" ]]; then echo " ERROR !!! This script must be run from '${OBJSRC}' directory" exit 1 fi cmd="${SRCDIR}/configure --prefix=${PREFIX} --enable-threads=aix" cmd="$cmd --disable-nls --with-as=/usr/ccs/bin/as --with-ld=/usr/ccs/bin/ld" cmd="$cmd --with-ar=/usr/ccs/bin/ar" echo "COMMAND: $cmd" ${SRCDIR}/configure --prefix=${PREFIX} --enable-threads=aix \ --disable-nls --with-as=/usr/ccs/bin/as --with-ld=/usr/ccs/bin/ld \ --with-ar=/usr/ccs/bin/ar echo "RC($?)" echo "=======================================" echo "COMMAND: 'gmake bootstrap'\n\n" gmake bootstrap echo "RC($?)" exit 0 } _1_) The configure completes with ignorable errors: START: Wed Aug 10 21:49:56 CDT 2011 ========================================= COMMAND: /work/gcc-4.0.2/configure --prefix=/opt/web/gcc-4.0.2-bs-vac-11.1.0.0 --enable-threads=aix --disable-nls --with-as=/usr/c cs/bin/as --with-ld=/usr/ccs/bin/ld --with-ar=/usr/ccs/bin/ar loading cache ./config.cache checking host system type... powerpc-ibm-aix6.1.0.0 checking target system type... powerpc-ibm-aix6.1.0.0 checking build system type... powerpc-ibm-aix6.1.0.0 checking for a BSD compatible install... /work/gcc-4.0.2/install-sh -c checking whether ln works... (cached) yes checking whether ln -s works... (cached) yes checking for gcc... (cached) /usr/vac/bin/cc checking whether the C compiler (/usr/vac/bin/cc ) works... yes checking whether the C compiler (/usr/vac/bin/cc ) is a cross-compiler... no checking whether we are using GNU C... (cached) no checking whether /usr/vac/bin/cc accepts -g... (cached) yes checking for gnatbind... no checking whether compiler driver understands Ada... (cached) no checking how to compare bootstrapped objects... (cached) tail +16c $$f1 > tmp-foo1; tail +16c $$f2 > tmp-foo2; cmp tmp-foo1 tmp-foo2 checking for correct version of gmp.h... no The following languages will be built: c,c++,java,objc *** This configuration is not supported in the following subdirectories: target-libmudflap target-libffi target-boehm-gc target-zlib target-libjava target-libada target-libgfortran (Any other directories should still work fine.) checking for bison... no checking for bison... (cached) yacc checking for gm4... (cached) m4 checking for flex... no checking for flex... (cached) lex checking for makeinfo... no checking for powerpc-ibm-aix6.1.0.0-ar... no checking for ar... (cached) ar checking for powerpc-ibm-aix6.1.0.0-as... no checking for as... (cached) as checking for powerpc-ibm-aix6.1.0.0-dlltool... no checking for dlltool... (cached) dlltool checking for powerpc-ibm-aix6.1.0.0-ld... no checking for ld... (cached) ld checking for powerpc-ibm-aix6.1.0.0-nm... no checking for nm... (cached) nm checking for powerpc-ibm-aix6.1.0.0-ranlib... no checking for ranlib... (cached) ranlib checking for powerpc-ibm-aix6.1.0.0-windres... no checking for windres... (cached) windres checking for powerpc-ibm-aix6.1.0.0-objcopy... no checking for objcopy... (cached) objcopy checking for powerpc-ibm-aix6.1.0.0-objdump... no checking for objdump... (cached) objdump checking for powerpc-ibm-aix6.1.0.0-ar... no checking for ar... (cached) ar checking for powerpc-ibm-aix6.1.0.0-as... no checking for as... (cached) as checking for powerpc-ibm-aix6.1.0.0-dlltool... no checking for dlltool... (cached) dlltool checking for powerpc-ibm-aix6.1.0.0-ld... no checking for ld... (cached) ld checking for powerpc-ibm-aix6.1.0.0-nm... no checking for nm... (cached) nm checking for powerpc-ibm-aix6.1.0.0-ranlib... no checking for ranlib... (cached) ranlib checking for powerpc-ibm-aix6.1.0.0-windres... no checking for windres... (cached) windres checking whether to enable maintainer-specific portions of Makefiles... no checking if symbolic links between directories work... (cached) yes creating ./config.status creating Makefile RC(0) _2_) gmake bootstrap fails with the following error: COMMAND: 'gmake bootstrap'\n\n mkdir build-powerpc-ibm-aix6.1.0.0 mkdir build-powerpc-ibm-aix6.1.0.0/libiberty Configuring in build-powerpc-ibm-aix6.1.0.0/libiberty configure: creating cache ../config.cache checking whether to enable maintainer-specific portions of Makefiles... no checking for makeinfo... /work/gcc-4.0.2/missing makeinfo configure: WARNING: *** Makeinfo is missing. Info documentation will not be built. checking for perl... perl checking build system type... powerpc-ibm-aix6.1.0.0 checking host system type... powerpc-ibm-aix6.1.0.0 checking for powerpc-ibm-aix6.1.0.0-ar... no checking for ar... ar checking for powerpc-ibm-aix6.1.0.0-ranlib... no checking for ranlib... ranlib checking for powerpc-ibm-aix6.1.0.0-gcc... /usr/vac/bin/cc .............. .................. ...................... (several thousands of lines of output) gmake[3]: Leaving directory `/work/objsrc-gcc-4.0.2/gcc' echo timestamp > stmp-multilib gmake[2]: Leaving directory `/work/objsrc-gcc-4.0.2/gcc' echo timestamp > stage3_build echo stage3_build > stage_last Bootstrap complete - make "quickstrap" to redo last build, "restage1" through "restage3" to rebuild specific stages, "restrap" to redo the bootstrap from stage1, or "cleanstrap" to redo the bootstrap from scratch. gmake[1]: Leaving directory `/work/objsrc-gcc-4.0.2/gcc' Comparing stage2 and stage3 of the compiler gmake[1]: Entering directory `/work/objsrc-gcc-4.0.2/gcc' rm -f .bad_compare case "slowcompare" in *compare | *compare-lean ) stage=2 ;; * ) stage=`echo slowcompare | sed -e 's,^[a-z]*compare\([0-9][0-9]*\).*,\1,'` ;; esac; \ for dir in . cp java objc build; do \ if [ "`echo $dir/*.o`" != "$dir/*.o" ] ; then \ for file in $dir/*.o; do \ case "slowcompare" in \ slowcompare* ) \ tail +16c ./$file > tmp-foo1; \ tail +16c stage$stage/$file > tmp-foo2 \ && (cmp tmp-foo1 tmp-foo2 > /dev/null 2>&1 || echo $file differs >> .bad_compare) || true; \ ;; \ fastcompare* ) \ cmp $file stage$stage/$file 16 16 > /dev/null 2>&1; \ test $? -eq 1 && echo $file differs >> .bad_compare || true; \ ;; \ gnucompare* ) \ cmp --ignore-initial=16 $file stage$stage/$file > /dev/null 2>&1; \ test $? -eq 1 && echo $file differs >> .bad_compare || true; \ ;; \ esac ; \ done; \ else true; fi; \ done rm -f tmp-foo* case "slowcompare" in *compare | *compare-lean ) stage=2 ;; * ) stage=`echo slowcompare | sed -e 's,^[a-z]*compare\([0-9][0-9]*\).*,\1,'` ;; esac; \ if [ -f .bad_compare ]; then \ echo "Bootstrap comparison failure!"; \ cat .bad_compare; \ exit 1; \ else \ case "slowcompare" in \ *-lean ) rm -rf stage$stage ;; \ *) ;; \ esac; true; \ fi Bootstrap comparison failure! ./fold-const.o differs gmake[1]: *** [slowcompare] Error 1 gmake[1]: Leaving directory `/work/objsrc-gcc-4.0.2/gcc' gmake: *** [bootstrap] Error 2 RC(2) There are lot of others who have reported similar issue and none of them have the resolution posted. I humbly request you to look into this issue and help me resolve. If you have additional questions about the environment, please feel free to send them to me. Thank you for your help and support in this matter. Sri - a.k.a lll