Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 95348 - gcc-3.4.4 "Bootstrap comparison failure!"
Summary: gcc-3.4.4 "Bootstrap comparison failure!"
Status: RESOLVED DUPLICATE of bug 95155
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: The Gentoo Linux Hardened Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-06-07 07:48 UTC by Daniel Black (RETIRED)
Modified: 2005-06-22 22:02 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Black (RETIRED) gentoo-dev 2005-06-07 07:48:08 UTC
env MAKEOPTS=-j1 emerge -pv gcc
!!! SELinux not loaded: SELinux is not enabled.
[ebuild     U ] sys-devel/gcc-3.4.4 [3.4.3.20050110-r2] (-altivec) -bootstrap +boundschecking* -build -debug -fortran -gcj -gtk +hardened -ip28 -multilib -multislot -n32 -n64 -nls -nocxx -nopie -nossp -objc -static 0 kB

# emerge gcc.....

rm -f tmp-foo*
case "gnucompare-lean" in *compare | *compare-lean ) stage=2 ;; * ) stage=`echo gnucompare-lean | 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 "gnucompare-lean" in \
    *-lean ) rm -rf stage$stage ;; \
    *) ;; \
  esac; true; \
fi
Bootstrap comparison failure!
./alias.o differs
./alloc-pool.o differs
./attribs.o differs
./bb-reorder.o differs
./bitmap.o differs
./bt-load.o differs
./builtins.o differs
./c-aux-info.o differs
./c-bounds.o differs
./c-common.o differs
./c-convert.o differs
./c-cppbuiltin.o differs
./c-decl.o differs
./c-dump.o differs
./c-errors.o differs
./c-format.o differs
./c-incpath.o differs
./c-lang.o differs
./c-lex.o differs
./c-objc-common.o differs
./c-opts.o differs
./c-parse.o differs
./c-pch.o differs
./c-ppoutput.o differs
./c-pragma.o differs
./c-pretty-print.o differs
./c-semantics.o differs
./c-typeck.o differs
./caller-save.o differs
./calls.o differs
./cfg.o differs
./cfganal.o differs
./cfgbuild.o differs
./cfgcleanup.o differs
./cfghooks.o differs
./cfglayout.o differs
./cfgloop.o differs
./cfgloopanal.o differs
./cfgloopmanip.o differs
./cfgrtl.o differs
./cgraph.o differs
./cgraphunit.o differs
./collect2.o differs
./combine.o differs
./conflict.o differs
./convert.o differs
./coverage.o differs
./cppcharset.o differs
./cpperror.o differs
./cppexp.o differs
./cppfiles.o differs
./cpphash.o differs
./cppinit.o differs
./cpplex.o differs
./cpplib.o differs
./cppmacro.o differs
./cpppch.o differs
./cppspec.o differs
./cpptrad.o differs
./cse.o differs
./cselib.o differs
./dbxout.o differs
./debug.o differs
./df.o differs
./diagnostic.o differs
./dojump.o differs
./doloop.o differs
./dominance.o differs
./dwarf2asm.o differs
./dwarf2out.o differs
./emit-rtl.o differs
./errors.o differs
./et-forest.o differs
./except.o differs
./explow.o differs
./expmed.o differs
./expr.o differs
./final.o differs
./flow.o differs
./fold-const.o differs
./function.o differs
./g++spec.o differs
./gcc.o differs
./gccspec.o differs
./gcov-dump.o differs
./gcov-iov.o differs
./gcov.o differs
./gcse.o differs
./genattr.o differs
./genattrtab.o differs
./genautomata.o differs
./gencheck.o differs
./gencodes.o differs
./genconditions.o differs
./genconfig.o differs
./genconstants.o differs
./genemit.o differs
./genextract.o differs
./genflags.o differs
./gengenrtl.o differs
./gengtype-lex.o differs
./gengtype-yacc.o differs
./gengtype.o differs
./genmodes.o differs
./genopinit.o differs
./genoutput.o differs
./genpeep.o differs
./genpreds.o differs
./genrecog.o differs
./genrtl.o differs
./gensupport.o differs
./ggc-common.o differs
./ggc-none.o differs
./ggc-page.o differs
./global.o differs
./graph.o differs
./gtype-desc.o differs
./haifa-sched.o differs
./hashtable.o differs
./hooks.o differs
./i386.o differs
./ifcvt.o differs
./insn-attrtab.o differs
./insn-emit.o differs
./insn-modes.o differs
./insn-output.o differs
./insn-recog.o differs
./integrate.o differs
./jump.o differs
./langhooks.o differs
./lcm.o differs
./line-map.o differs
./lists.o differs
./local-alloc.o differs
./loop-init.o differs
./loop-unroll.o differs
./loop-unswitch.o differs
./loop.o differs
./main.o differs
./mkdeps.o differs
./optabs.o differs
./opts.o differs
./params.o differs
./postreload.o differs
./predict.o differs
./prefix.o differs
./pretty-print.o differs
./print-rtl.o differs
./print-rtl1.o differs
./print-tree.o differs
./profile.o differs
./protector.o differs
./ra-build.o differs
./ra-colorize.o differs
./ra-debug.o differs
./ra-rewrite.o differs
./ra.o differs
./read-rtl.o differs
./real.o differs
./recog.o differs
./reg-stack.o differs
./regclass.o differs
./regmove.o differs
./regrename.o differs
./reload.o differs
./reload1.o differs
./resource.o differs
./rtl-error.o differs
./rtl.o differs
./rtlanal.o differs
./sbitmap.o differs
./sched-deps.o differs
./sched-ebb.o differs
./sched-rgn.o differs
./sched-vis.o differs
./sibcall.o differs
./simplify-rtx.o differs
./sreal.o differs
./stmt.o differs
./stor-layout.o differs
./stringpool.o differs
./stub-objc.o differs
./targhooks.o differs
./timevar.o differs
./tlink.o differs
./toplev.o differs
./tracer.o differs
./tree-dump.o differs
./tree-inline.o differs
./tree-optimize.o differs
./tree.o differs
./unroll.o differs
./value-prof.o differs
./varasm.o differs
./varray.o differs
./web.o differs
cp/call.o differs
cp/class.o differs
cp/cp-lang.o differs
cp/cvt.o differs
cp/cxx-pretty-print.o differs
cp/decl.o differs
cp/decl2.o differs
cp/dump.o differs
cp/error.o differs
cp/except.o differs
cp/expr.o differs
cp/friend.o differs
cp/init.o differs
cp/lex.o differs
cp/mangle.o differs
cp/method.o differs
cp/name-lookup.o differs
cp/optimize.o differs
cp/parser.o differs
cp/pt.o differs
cp/ptree.o differs
cp/repo.o differs
cp/rtti.o differs
cp/search.o differs
cp/semantics.o differs
cp/tree.o differs
cp/typeck.o differs
cp/typeck2.o differs
make[1]: *** [gnucompare-lean] Error 1
make[1]: Leaving directory `/var/tmp/portage/gcc-3.4.4/work/build/gcc'
make: *** [bootstrap-lean] Error 2

!!! ERROR: sys-devel/gcc-3.4.4 failed.
!!! Function gcc_do_make, Line 1204, Exitcode 2
!!! emake failed with bootstrap-lean
!!! If you need support, post the topmost build error, NOT this status message.

spider root # emerge info
!!! SELinux not loaded: SELinux is not enabled.
Portage 2.0.51.22-r1 (selinux/2005.1/x86, gcc-3.4.3-20050110, glibc-2.3.5-r0, 2.6.7-hardened-r8 i686)
=================================================================
System uname: 2.6.7-hardened-r8 i686 Pentium III (Coppermine)
Gentoo Base System version 1.4.16
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
dev-lang/python:     2.3.5
sys-apps/sandbox:    1.2.8
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5
sys-devel/binutils:  2.15.92.0.2-r10
sys-devel/libtool:   1.5.16
virtual/os-headers:  2.6.8.1-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=pentium3 -O2 -pipe -fstack-protector-all"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/alias /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=pentium3 -O2 -pipe -fstack-protector-all"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig cvs distcc distlocks loadpolicy sandbox selinux sfperms strict userpriv usersandbox"
GENTOO_MIRRORS="ftp://mirror.internode.on.net/pub/gentoo             http://gentoo.oregonstate.edu           http://distro.ibiblio.org/pub/linux/distributions/gentoo"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.au.gentoo.org/gentoo-portage"
USE="acpi apache2 arts berkdb boundschecking crypt cups curl esd ethereal fam fastcgi flash gd gdbm gpm guile hardened imagemagick junit ldap libclamav libgda libwww maketest mbox mmx mysql ncurses nptl oav openal pam perl php pic plotutils png postgres python readline samba sasl selinux skey slang slp socks5 sox sse ssl symlink tcpd tetex tiff usb vhosts x86 xml xml2 zeo zlib userland_GNU kernel_linux elibc_glibc"

After removing -fstack-protector-all it got past this stage.
Comment 1 solar (RETIRED) gentoo-dev 2005-06-07 10:09:07 UTC
Try 3.4.2 or merge gcc with -fno-stack-protector. Merging with -fno 
should still yield a hardened compiler. Just not one built with all
hardened features enabled which is not really a big deal as gcc itself 
is rarely if every used as an attack vector. There appears to be a bug
due to recent eclass/ebuild changes that break the toolchain for some of
us. And sad to say but I'm really lacking the free time to directly
investigate what has gone wrong in the ebuild process so any help
investigating on this front would be greatly appreciated.

Comment 2 Daniel Black (RETIRED) gentoo-dev 2005-06-07 16:36:25 UTC
with -fno-stack-protector  
  
 libgcc/./_fixunsdfdi.o  
( ` if [ -f ./nm ] ; then echo ./nm ; elif  
[ -f /var/tmp/portage/gcc-3.4.4/work/build/gcc/../binutils/nm-new ] ; then  
echo /var/tm  
p/portage/gcc-3.4.4/work/build/gcc/../binutils/nm-new ; else if  
[ "i686-pc-linux-gnu" = "i686-pc-linux-gnu" ] ; then echo nm; else  
 t='s,y,y,'; echo nm | sed -e  ; fi; fi` -pg libgcc/./_fixunsdfdi.o | gawk 'NF  
== 3 && $2 !~ /^[UN]$/ { print "\t.hidden", $3 }';  
cat libgcc//stacknote.s ) |  ./xgcc -B./ -B/usr/i686-pc-linux-gnu/bin/  
-isystem /usr/i686-pc-linux-gnu/include -isystem /usr/i686-  
pc-linux-gnu/sys-include -L/var/tmp/portage/gcc-3.4.4/work/build/gcc/../ld -O2   
-DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prot  
otypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC  
-DHAVE_SYSLOG -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D  
__GCC_FLOAT_NOT_NEEDED  -D_LIBC_PROVIDES_SSP_  -r -nostdinc -nostdlib -o  
libgcc/./_fixunsdfdi.oS libgcc/./_fixunsdfdi.o -xassemble  
r -  
Inconsistency detected by ld.so: rtld.c: 1075: dl_main: Assertion  
`_rtld_local._dl_rtld_map.l_libname' failed!  
make[3]: *** [libgcc/./_fixunsdfdi.oS] Error 127  
make[3]: Leaving directory `/var/tmp/portage/gcc-3.4.4/work/build/gcc'  
make[2]: *** [libgcc.a] Error 2  
make[2]: Leaving directory `/var/tmp/portage/gcc-3.4.4/work/build/gcc'  
make[1]: *** [stage1_build] Error 2  
make[1]: Leaving directory `/var/tmp/portage/gcc-3.4.4/work/build/gcc'  
make: *** [bootstrap-lean] Error 2  
  
!!! ERROR: sys-devel/gcc-3.4.4 failed.  
!!! Function gcc_do_make, Line 1204, Exitcode 2  
!!! emake failed with bootstrap-lean  
!!! If you need support, post the topmost build error, NOT this status  
message.  
  
will try again later.  
 
 
Comment 3 Robert Paskowitz (RETIRED) gentoo-dev 2005-06-22 22:02:14 UTC

*** This bug has been marked as a duplicate of 95155 ***