When I try to emerge xine-ib the following error is hit: i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I../../.. -I../../.. -I../../../include -I../../../include -I../../../src -I../../../src/xine-engine -I../../../src/xine-engine -I../../../src/xine-utils -I../../../src/input -I../../../src/input -I../../../lib -DHAVE_MMX -mtune=pentiumpro -O3 -pipe -falign-functions=4 -falign-loops=4 -falign-jumps=4 -mpreferred-stack-boundary=2 -fexpensive-optimizations -fschedule-insns2 -fno-strict-aliasing -ffast-math -funroll-loops -finline-functions -Wall -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE -Wpointer-arith -Wnested-externs -Wcast-align -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -mcpu=pentium4 -mtune=pentium4 -O3 -pipe -fno-web -funit-at-a-time -mno-sse2 -mno-sse3 -ffunction-sections -MT mmx.lo -MD -MP -MF .deps/mmx.Tpo -c mmx.c -o .libs/mmx.o mmx.h: In function `mmx_supported': mmx.h:74: error: PIC register `ebx' clobbered in `asm' make[4]: *** [mmx.lo] Error 1 make[4]: Leaving directory `/var/tmp/portage/xine-lib-1_rc7/work/xine-lib-1-rc7/src/post/goom' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/var/tmp/portage/xine-lib-1_rc7/work/xine-lib-1-rc7/src/post' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/xine-lib-1_rc7/work/xine-lib-1-rc7/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/xine-lib-1_rc7/work/xine-lib-1-rc7' make: *** [all] Error 2 !!! ERROR: media-libs/xine-lib-1_rc7 failed. !!! Function src_compile, Line 149, Exitcode 2 !!! Parallel make failed !!! If you need support, post the topmost build error, NOT this status message. Reproducible: Always Steps to Reproduce: 1.emerge xine-lib 2. 3. Actual Results: xine-lib fails to emerge due to compiler error Expected Results: xine-lib should merge correctly. My emerge -v: Portage 2.0.51-r3 (default-linux/x86/2004.2, gcc-hardened, glibc-2.3.4.20041102-r0, 2.6.9-gentoo-r3 i686) ================================================================= System uname: 2.6.9-gentoo-r3 i686 Intel(R) Celeron(R) CPU 2.66GHz Gentoo Base System version 1.6.6 Autoconf: sys-devel/autoconf-2.59-r5 Automake: sys-devel/automake-1.8.5-r1 Binutils: sys-devel/binutils-2.15.92.0.2-r1 Headers: sys-kernel/linux26-headers-2.6.8.1-r1 Libtools: sys-devel/libtool-1.5.2-r7 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-mcpu=pentium4 -mtune=pentium4 -O3 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" COMPILER="" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -mcpu=i686 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs buildpkg ccache distlocks sandbox sfperms" GENTOO_MIRRORS="http://gentoo.osuosl.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X alsa apm arts avi berkdb bitmap-fonts bonobo cdr crypt cups encode esd f77 fam flac foomaticdb fortran gdbm gif gnome gpm gstreamer gtk gtk2 gtkhtml guile imagemagick imlib java jpeg junit kde ldap libg++ libwww mad mikmod motif mozilla mpeg ncurses nls nptl oggvorbis opengl oss pam pdflib perl png python qt quicktime readline samba sdl slang spell ssl svga tcltk tcpd tiff truetype x86 xmlxml2 xmms xv zlib"
I fixed the fact that the CXXFLAGS were not = to CFLAGS. Tried to re-emerge. Did not work. As well, it might be relevant that I emerged gcc-3.4.3 recently, and had to do a gcc-config 3, a fix_lib_tool.sh, and modify the gcc SPECS variable in /etc/env.d/gcc/i686-pc-linux-gnu-3.4.3.
Fixed by switching to gcc-config sources which were not hardened.