gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -O3 -pipe -msse -mmmx -mfpmath=sse -fomit-frame-pointer -fforce-addr -falign-functions=4 -fprefetch-loop-arrays -MT filtbank.lo -MD -MP -MF .deps/filtbank.Tpo -c filtbank.c -o filtbank.o >/dev/null 2>&1 make[2]: *** [ic_predict.lo] Error 1 make[2]: *** Waiting for unfinished jobs.... mv -f .libs/filtbank.lo filtbank.lo make[2]: Leaving directory `/var/tmp/portage/faad2-2.0_rc3/work/faad2/libfaad' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/faad2-2.0_rc3/work/faad2' make: *** [all] Error 2 !!! ERROR: media-libs/faad2-2.0_rc3 failed. !!! Function src_compile, Line 39, Exitcode 2 !!! (no error message) Portage 2.0.49-r15 (default-x86-1.4, gcc-3.3.2, glibc-2.3.2-r9, 2.4.20-gentoo-r7) ================================================================= System uname: 2.4.20-gentoo-r7 i686 Pentium III (Katmai) Gentoo Base System version 1.4.3.12 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=pentium3 -O3 -pipe -msse -mmmx -mfpmath=sse -fomit-frame-pointer -fforce-addr -falign-functions=4 -fprefetch-loop-arrays" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/config /usr/kde/3/share/config /var/bind /usr/X11R6/lib/X11/xkb" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-march=pentium3 -O3 -pipe -msse -mmmx -mfpmath=sse -fomit-frame-pointer -fforce-addr -falign-functions=4 -fprefetch-loop-arrays" DISTDIR="/usr/portage/distfiles" FEATURES="sandbox ccache autoaddcvs" GENTOO_MIRRORS="http://gentoo.linux.no/ ftp://gentoo.linux.no/pub/gentoo/ ftp://ftp.uninett.no/pub/linux/Gentoo http://mirror.pudas.net/gentoo ftp://mirror.pudas.net/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="x86 oss avi crypt cups encode foomaticdb gif jpeg libg++ libwww mad mpeg ncurses pdflib png quicktime spell truetype xml2 xmms xv zlib gdbm berkdb readline aalib java X sdl gpm tcpd pam ssl perl python esd imlib oggvorbis gtk motif opengl aavm dga dnd evo ffmpeg gd hyriand javascript jikes mbox mdb moznoirc moznomail mozp3p mozsvg offensive pda pic radeon S3TC samba sox sse tiff type1 usb vim-with-x wmf wxwindows Xaw3d xosd -apm -arts -kde -mikmod -nls -svga -slang -tcltk -gnome -qt video_cards_radeon"
first rule of gentoo bugs : lower your CFLAGS then try again. second, if that doesn't work try limiting your jobs (put MAKEOPTS="-j1" before the emerge command). third, still a no-go ? Attach the full output, the problematic part is missing here.
fails for me too, the full compilation (excl. configure): make all-recursive make[1]: Entering directory `/var/tmp/portage/faad2-2.0_rc3/work/faad2' Making all in libfaad make[2]: Entering directory `/var/tmp/portage/faad2-2.0_rc3/work/faad2/libfaad' if /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT bits.lo -MD -MP -MF ".deps/bits.Tpo" \ -c -o bits.lo `test -f 'bits.c' || echo './'`bits.c; \ then mv -f ".deps/bits.Tpo" ".deps/bits.Plo"; \ else rm -f ".deps/bits.Tpo"; exit 1; \ fi if /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT cfft.lo -MD -MP -MF ".deps/cfft.Tpo" \ -c -o cfft.lo `test -f 'cfft.c' || echo './'`cfft.c; \ then mv -f ".deps/cfft.Tpo" ".deps/cfft.Plo"; \ else rm -f ".deps/cfft.Tpo"; exit 1; \ fi mkdir .libs gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT bits.lo -MD -MP -MF .deps/bits.Tpo -c bits.c -fPIC -DPIC -o .libs/bits.lo mkdir .libs mkdir: cannot create directory `.libs': File exists gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT cfft.lo -MD -MP -MF .deps/cfft.Tpo -c cfft.c -fPIC -DPIC -o .libs/cfft.lo cfft.c: In function `cfftf1': cfft.c:613: warning: passing arg 3 of `passf4' from incompatible pointer type cfft.c:613: warning: passing arg 5 of `passf4' from incompatible pointer type cfft.c:613: warning: passing arg 6 of `passf4' from incompatible pointer type cfft.c:613: warning: passing arg 7 of `passf4' from incompatible pointer type cfft.c:615: warning: passing arg 3 of `passf4' from incompatible pointer type cfft.c:615: warning: passing arg 5 of `passf4' from incompatible pointer type cfft.c:615: warning: passing arg 6 of `passf4' from incompatible pointer type cfft.c:615: warning: passing arg 7 of `passf4' from incompatible pointer type cfft.c:621: warning: passing arg 3 of `passf2' from incompatible pointer type cfft.c:621: warning: passing arg 5 of `passf2' from incompatible pointer type cfft.c:623: warning: passing arg 3 of `passf2' from incompatible pointer type cfft.c:623: warning: passing arg 5 of `passf2' from incompatible pointer type cfft.c:631: warning: passing arg 3 of `passf3' from incompatible pointer type cfft.c:631: warning: passing arg 5 of `passf3' from incompatible pointer type cfft.c:631: warning: passing arg 6 of `passf3' from incompatible pointer type cfft.c:633: warning: passing arg 3 of `passf3' from incompatible pointer type cfft.c:633: warning: passing arg 5 of `passf3' from incompatible pointer type cfft.c:633: warning: passing arg 6 of `passf3' from incompatible pointer type cfft.c:643: warning: passing arg 3 of `passf5' from incompatible pointer type cfft.c:643: warning: passing arg 5 of `passf5' from incompatible pointer type cfft.c:643: warning: passing arg 6 of `passf5' from incompatible pointer type cfft.c:643: warning: passing arg 7 of `passf5' from incompatible pointer type cfft.c:643: warning: passing arg 8 of `passf5' from incompatible pointer type cfft.c:645: warning: passing arg 3 of `passf5' from incompatible pointer type cfft.c:645: warning: passing arg 5 of `passf5' from incompatible pointer type cfft.c:645: warning: passing arg 6 of `passf5' from incompatible pointer type cfft.c:645: warning: passing arg 7 of `passf5' from incompatible pointer type cfft.c:645: warning: passing arg 8 of `passf5' from incompatible pointer type gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT bits.lo -MD -MP -MF .deps/bits.Tpo -c bits.c -o bits.o >/dev/null 2>&1 cfft.c:811:2: warning: no newline at end of file mv -f .libs/bits.lo bits.lo if /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT decoder.lo -MD -MP -MF ".deps/decoder.Tpo" \ -c -o decoder.lo `test -f 'decoder.c' || echo './'`decoder.c; \ then mv -f ".deps/decoder.Tpo" ".deps/decoder.Plo"; \ else rm -f ".deps/decoder.Tpo"; exit 1; \ fi gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT cfft.lo -MD -MP -MF .deps/cfft.Tpo -c cfft.c -o cfft.o >/dev/null 2>&1 rm -f .libs/decoder.lo gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT decoder.lo -MD -MP -MF .deps/decoder.Tpo -c decoder.c -fPIC -DPIC -o .libs/decoder.lo gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT decoder.lo -MD -MP -MF .deps/decoder.Tpo -c decoder.c -o decoder.o >/dev/null 2>&1 mv -f .libs/cfft.lo cfft.lo if /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT drc.lo -MD -MP -MF ".deps/drc.Tpo" \ -c -o drc.lo `test -f 'drc.c' || echo './'`drc.c; \ then mv -f ".deps/drc.Tpo" ".deps/drc.Plo"; \ else rm -f ".deps/drc.Tpo"; exit 1; \ fi mv -f .libs/decoder.lo decoder.lo if /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT error.lo -MD -MP -MF ".deps/error.Tpo" \ -c -o error.lo `test -f 'error.c' || echo './'`error.c; \ then mv -f ".deps/error.Tpo" ".deps/error.Plo"; \ else rm -f ".deps/error.Tpo"; exit 1; \ fi rm -f .libs/drc.lo gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT drc.lo -MD -MP -MF .deps/drc.Tpo -c drc.c -fPIC -DPIC -o .libs/drc.lo gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT drc.lo -MD -MP -MF .deps/drc.Tpo -c drc.c -o drc.o >/dev/null 2>&1 rm -f .libs/error.lo gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT error.lo -MD -MP -MF .deps/error.Tpo -c error.c -fPIC -DPIC -o .libs/error.lo mv -f .libs/drc.lo drc.lo if /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT filtbank.lo -MD -MP -MF ".deps/filtbank.Tpo" \ -c -o filtbank.lo `test -f 'filtbank.c' || echo './'`filtbank.c; \ then mv -f ".deps/filtbank.Tpo" ".deps/filtbank.Plo"; \ else rm -f ".deps/filtbank.Tpo"; exit 1; \ fi error.c:31: warning: `err_msg' initialized and declared `extern' error.c:49:3: warning: no newline at end of file gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT error.lo -MD -MP -MF .deps/error.Tpo -c error.c -o error.o >/dev/null 2>&1 mv -f .libs/error.lo error.lo if /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT ic_predict.lo -MD -MP -MF ".deps/ic_predict.Tpo" \ -c -o ic_predict.lo `test -f 'ic_predict.c' || echo './'`ic_predict.c; \ then mv -f ".deps/ic_predict.Tpo" ".deps/ic_predict.Plo"; \ else rm -f ".deps/ic_predict.Tpo"; exit 1; \ fi rm -f .libs/filtbank.lo gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT filtbank.lo -MD -MP -MF .deps/filtbank.Tpo -c filtbank.c -fPIC -DPIC -o .libs/filtbank.lo rm -f .libs/ic_predict.lo gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT ic_predict.lo -MD -MP -MF .deps/ic_predict.Tpo -c ic_predict.c -fPIC -DPIC -o .libs/ic_predict.lo gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT ic_predict.lo -MD -MP -MF .deps/ic_predict.Tpo -c ic_predict.c -o ic_predict.o >/dev/null 2>&1 gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -g -march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse -MT filtbank.lo -MD -MP -MF .deps/filtbank.Tpo -c filtbank.c -o filtbank.o >/dev/null 2>&1 make[2]: *** [ic_predict.lo] Error 1 make[2]: *** Waiting for unfinished jobs.... mv -f .libs/filtbank.lo filtbank.lo make[2]: Leaving directory `/var/tmp/portage/faad2-2.0_rc3/work/faad2/libfaad' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/faad2-2.0_rc3/work/faad2' make: *** [all] Error 2 !!! ERROR: media-libs/faad2-2.0_rc3 failed. !!! Function src_compile, Line 39, Exitcode 2 !!! (no error message) My emerge info: Portage 2.0.49-r18 (default-x86-1.4, gcc-3.3.2, glibc-2.3.2-r9, 2.6.0-test10-gentoo-r1) ================================================================= System uname: 2.6.0-test10-gentoo-r1 i686 Pentium III (Coppermine) Gentoo Base System version 1.4.3.12 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.1/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://trumpetti.atm.tut.fi/gentoo/ http://www.mirror.ac.uk/sites/www.ibiblio.org/gentoo http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo http://ftp.gentoo.skynet.be/ http://gentoo.oregonstate.edu" 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 bonobo cdr crypt cups curl directfb encode esd foomaticdb gd gdbm gif gnome gpm gtk imap imlib java jpeg kde libg++ libwww mad maildir mcal mikmod mmx motif mpeg mysql ncurses nls oggvorbis opengl oss pam pdflib perl png python qt quicktime readline sdl slang spell sse ssl svga tcpd truetype x86 xml xml2 xmms xv zlib"
Hmmm I just tried to do this: CFLAGS="-march=i686" emerge faad2 And that worked. (CXXFLAGS is not changed - it's still my original "-march=pentium3 -mcpu=pentium3 -O3 -pipe -mfpmath=sse -mmmx -msse" - no problems that i could tell)
CXXFLAGS don't matter for plain C compiles. I see pretty much the same gcc flags, to a certain degree thats up to the user and not a gentoo problem. If you can single out which flag exactly is problematic i might consider blocking it. My guess its either the '-mfpmath=*' flag (which is pretty useless to my knowledge anyway) or one of the -m{mmx,sse} flags. Possibly a combination.
without knowing what exactly caused the problem i can't block the flag involved. I'm about to close this WONTFIX if no progress is being made.
The problem seems to be the "-mfpmath=sse" flag. I was having the exact same problem on a P3 with similar CFALGS. Removing the "-mfpmath=sse" fixes the problem for me. Please consider blocking that one.
exporting CFLAGS without -mfpmath=sse lets me compile it as well: Portage 2.0.49-r18 (default-x86-1.4, gcc-3.3.2, glibc-2.3.3_pre20031222-r0, 2.4.22) ================================================================= System uname: 2.4.22 i686 Pentium III (Coppermine) Gentoo Base System version 1.4.3.12 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=pentium3 -O3 -pipe -fprefetch-loop-arrays -ffast-math -fforce-addr -falign-functions=4 -mmmx -msse" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.1/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-march=pentium3 -O3 -pipe -fprefetch-loop-arrays -ffast-math -fforce-addr -falign-functions=4 -mmmx -msse -mfpmath=sse" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://gentoo.linux.no" MAKEOPTS="-j5" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X aalib apm arts avi berkdb bonobo cdr crypt cups dga directfb dvd encode esd fbcon foomaticdb gd gdbm gif gnome gphoto2 gpm gtk gtk2 gtkhtml imap imlib java jpeg kde ldap libg++ libwww mad mikmod mmx motif mozilla mpeg mysql ncurses nls oggvorbis opengl oss pam pdflib perl png python qt quicktime readline sdl slang spell sse ssl svga tcltk tcpd tiff truetype x86 xface xinerama xml2 xmms xv zlib"
ok, thanks for testing... i'll block that in this case, but remember extensive use of optimizing CFLAGS and resulting behaviour is mainly the responsibility of the user.
ok i just added filter for the mentioned flag to rc3. I guess that fixes it, please test.