Hi, I build an oxygen sgi machine with gentoo, I booted via pxe and tftp(netboot image), I bootstaped my system from stage1, and coming on stage 2 i run "emerge -e system". After 32 packages, the 33th package(dev-util/guile-1.6.7) compilation failed with the following output: hecking for strdup... yes configure: creating ./config.status config.status: creating Makefile config.status: creating ice-9/Makefile config.status: executing depfiles commands make all-recursive make[1]: Entering directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7' Making all in oop make[2]: Entering directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7/oop' Making all in goops make[3]: Entering directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7/oop/goops' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7/oop/goops' make[3]: Entering directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7/oop' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7/oop' make[2]: Leaving directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7/oop' Making all in qt make[2]: Entering directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7/qt' Making all in md make[3]: Entering directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7/qt/md' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7/qt/md' Making all in time make[3]: Entering directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7/qt/time' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7/qt/time' make[3]: Entering directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7/qt' if /bin/sh ../libtool --tag=CC --mode=compile mips-unknown-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I./.. -O3 -march=mips4 -pipe -fomit-frame-pointer -ftracer -fforce-addr -Wall -Wmissing-prototypes -fno-strict-aliasing -MT qt.lo -MD -MP -MF ".deps/qt.Tpo" -c -o qt.lo qt.c; \ then mv -f ".deps/qt.Tpo" ".deps/qt.Plo"; else rm -f ".deps/qt.Tpo"; exit 1; fi mkdir .libs mips-unknown-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I./.. -O3 -march=mips4 -pipe -fomit-frame-pointer -ftracer -fforce-addr -Wall -Wmissing-prototypes -fno-strict-aliasing -MT qt.lo -MD -MP -MF .deps/qt.Tpo -c qt.c -fPIC -DPIC -o .libs/qt.o mips-unknown-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I./.. -O3 -march=mips4 -pipe -fomit-frame-pointer -ftracer -fforce-addr -Wall -Wmissing-prototypes -fno-strict-aliasing -MT qt.lo -MD -MP -MF .deps/qt.Tpo -c qt.c -o qt.o >/dev/null 2>&1 ln -s ./md/mips.s qtmds.s /bin/sh ../libtool --mode=compile mips-unknown-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I./.. -O3 -march=mips4 -pipe -fomit-frame-pointer -ftracer -fforce-addr -Wall -Wmissing-prototypes -fno-strict-aliasing -c qtmds.s mips-unknown-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I./.. -O3 -march=mips4 -pipe -fomit-frame-pointer -ftracer -fforce-addr -Wall -Wmissing-prototypes -fno-strict-aliasing -c qtmds.s -fPIC -DPIC -o .libs/qtmds.o qtmds.s: Assembler messages: qtmds.s:69: Warning: MIPS PIC call to register other than $25 qtmds.s:69: Warning: No .cprestore pseudo-op used in PIC code qtmds.s:97: Warning: MIPS PIC call to register other than $25 qtmds.s:97: Warning: No .cprestore pseudo-op used in PIC code qtmds.s:122: Warning: No .cprestore pseudo-op used in PIC code qtmds.s:149: Warning: MIPS PIC call to register other than $25 qtmds.s:149: Warning: No .cprestore pseudo-op used in PIC code qtmds.s:158: Warning: MIPS PIC call to register other than $25 qtmds.s:158: Warning: No .cprestore pseudo-op used in PIC code qtmds.s:162: Warning: MIPS PIC call to register other than $25 qtmds.s:162: Warning: No .cprestore pseudo-op used in PIC code qtmds.s:98: Error: Cannot branch to undefined symbol. qtmds.s:164: Error: Cannot branch to undefined symbol. distcc[18475] ERROR: compile (null) on localhost failed make[3]: *** [qtmds.lo] Error 1 make[3]: Leaving directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7/qt' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7/qt' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/guile-1.6.7/work/guile-1.6.7' make: *** [all] Error 2 !!! ERROR: dev-util/guile-1.6.7 failed. Call stack: ebuild.sh, line 1539: Called dyn_compile ebuild.sh, line 939: Called src_compile guile-1.6.7.ebuild, line 64: Called die !!! make failed !!! If you need support, post the topmost build error, and the call stack if relevant. My "emerge --info" : netboot-2006 / # emerge --info Portage 2.1-r2 (default-linux/mips/2006.1/generic-be/o32, gcc-4.1.1, glibc-2.3.6-r4, 2.6.16.27-mipsgit-20060320-ip32r5k mips64) ================================================================= System uname: 2.6.16.27-mipsgit-20060320-ip32r5k mips64 R12000 V2.3 FPU V0.0 Gentoo Base System version 1.12.6 distcc 2.18.3 mips-unknown-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] app-admin/eselect-compiler: [Not Present] dev-java/java-config: [Not Present] dev-lang/python: 2.4.3-r1 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: [Not Present] dev-util/confcache: [Not Present] sys-apps/sandbox: 1.2.17 sys-devel/autoconf: [Not Present] sys-devel/automake: [Not Present] sys-devel/binutils: 2.16.1-r3 sys-devel/gcc-config: 1.3.13-r3 sys-devel/libtool: [Not Present] virtual/os-headers: 2.6.14.4 ACCEPT_KEYWORDS="mips" AUTOCLEAN="yes" CBUILD="mips-unknown-linux-gnu" CFLAGS="-O3 -march=mips4 -pipe -fomit-frame-pointer -ftracer -fforce-addr" CHOST="mips-unknown-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/terminfo" CXXFLAGS="-O3 -march=mips4 -pipe -fomit-frame-pointer -ftracer -fforce-addr" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig ccache distcc distlocks metadata-transfer sfperms strict" GENTOO_MIRRORS="ftp://ftp.ntua.gr/pub/linux/gentoo/" MAKEOPTS="-j9" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="X adns alsa apache2 bash-completion bcmath berkdb bitmap-fonts bzip2 caps cdr con cracklib crypt cscope ctype dbus dlloader doc encode ethereal examples fam fb fftw fortran ftp gif ginac gnutls gpm gtk gtk2 howl iconv imap imlib ipv6 isdnlog jpeg libg++ libwww memlimit mime mips motif mp3 mpeg mpi mysql mysqli netboot nls ogg opengl pam pcntl pdflib perl png posix pppd python qt quicktime readline reflection sdl session simplexml snmp sockets ssl tcltk tcpd test truetype truetype-fonts type1-fonts udev usb verbose vorbis xml xml2 xmlrpc xorg xv zlib elibc_glibc input_devices_keyboard input_devices_mouse input_devices_evdev kernel_linux userland_GNU video_cards_dummy video_cards_fbdev video_cards_impact video_cards_newport video_cards_v4l" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY netboot-2006 / # As you can see, I use distcc, to compile the packages that support distcc compilation. The machines which run distccd, are eight i686 xeon, so I cannot define if the compilation problem is a cross compilation problem or a mips compilation problem( I don't know if guile supports distcc, my tcpdump output say, that the time of the compilation, distcc tcp packets pass from port 3632(distcc port). On that eight machines(which run distccd), I've built the mips cross-architecture toolchain with the crossdev utility. Have I done something wrong?
I forgot to say that it's reproducible.
Ok, number one, stop using ricer CFLAGS. We don't support any compilation failures with CFLAGS above "-O2 -march=<foo> -pipe". Number two, try without setting MAKEOPTS="-j9". Number three, try without distcc. Also, make absolutely certain that your toolchain on the distcc server(s) is the same *exact* version of things as on your O2. If you still encounter the same failure after all of then, then you might actually have a bug. Closing as invalid until such time as you provide proof that it wasn't your ricing that caused this.