When I emerge xine-lib_rc3-r1, I get parallel make errors. Reproducible: Always Steps to Reproduce: 1.ACCEPT_KEYWORDS="~x86" emerge -u xine-lib 2. 3. Actual Results: source='zoom_filter_mmx.c' object='zoom_filter_mmx.lo' libtool=yes \ depfile='.deps/zoom_filter_mmx.Plo' tmpdepfile='.deps/zoom_filter_mmx.TPlo' \ depmode=gcc3 /bin/sh ../../../depcomp \ /bin/sh ../../../libtool-nofpic --mode=compile 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 -DHAVE_MMX `echo -Wall -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE -Wpointer-arith -Wnested-externs -Wcast-align -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -O3 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -pipe | sed -e 's/-fomit-frame-pointer//g;s/-Os//g'` -c -o zoom_filter_mmx.lo `test -f 'zoom_filter_mmx.c' || echo './'`zoom_filter_mmx.c zoom_filter_mmx.c:16: warning: no previous prototype for `zoom_filter_mmx_supported' source='zoom_filter_xmmx.c' object='zoom_filter_xmmx.lo' libtool=yes \ depfile='.deps/zoom_filter_xmmx.Plo' tmpdepfile='.deps/zoom_filter_xmmx.TPlo' \ depmode=gcc3 /bin/sh ../../../depcomp \ /bin/sh ../../../libtool-nofpic --mode=compile 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 -DHAVE_MMX `echo -Wall -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE -Wpointer-arith -Wnested-externs -Wcast-align -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -O3 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -pipe | sed -e 's/-fomit-frame-pointer//g;s/-Os//g'` -c -o zoom_filter_xmmx.lo `test -f 'zoom_filter_xmmx.c' || echo './'`zoom_filter_xmmx.c zoom_filter_xmmx.c:23: warning: no previous prototype for `zoom_filter_xmmx_supported' zoom_filter_xmmx.c:31: warning: no previous prototype for `zoom_filter_xmmx' zoom_filter_xmmx.c: In function `zoom_filter_xmmx': zoom_filter_xmmx.c:40: warning: unused variable `interpix' {standard input}: Assembler messages: {standard input}:73: Error: suffix or operands invalid for `add' make[4]: *** [zoom_filter_xmmx.lo] Error 1 make[4]: Leaving directory `/var/tmp/portage/xine-lib-1_rc3-r1/work/xine-lib-1-rc3a/src/post/goom' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/var/tmp/portage/xine-lib-1_rc3-r1/work/xine-lib-1-rc3a/src/post' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/xine-lib-1_rc3-r1/work/xine-lib-1-rc3a/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/xine-lib-1_rc3-r1/work/xine-lib-1-rc3a' make: *** [all] Error 2 !!! ERROR: media-libs/xine-lib-1_rc3-r1 failed. !!! Function src_compile, Line 105, Exitcode 2 !!! Parallel make failed Expected Results: compile so i can run sweet sweet KDE 3.2 Portage 2.0.50_pre21 (default-x86-1.4, gcc-3.3.2, glibc-2.3.3_pre20040117-r0, 2.6.1-gentoo) ================================================================= System uname: 2.6.1-gentoo i686 Intel(R) Pentium(R) 4 CPU 2.53GHz Gentoo Base System version 1.4.3.12 ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59 Automake: sys-devel/automake-1.8.2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O3 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -pipe" 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.2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O3 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://gentoo.mirrors.pair.com/ ftp://csociety-ftp.ecn.purdue.edu/pub/gentoo/ http://194.83.57.2/sites/www.ibiblio.org/gentoo/ http://194.83.57.3/sites/www.ibiblio.org/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X alsa apache2 apm arts avi berkdb bonobo cdr crypt cups encode esd foomaticdb gdbm gif gnome gphoto2 gpm gtk gtk2 gtkhtml guile imlib java jpeg kde ldap libg++ libwww mad mikmod motif mozilla mpeg mysql ncurses nls oggvorbis opengl oss pam pda pdflib perl png python qt quicktime readline sdl slang spell ssl svga tcpd truetype x86 xml xml2 xmms xv zlib"
Could you try some sane CFLAGS, and see if the error still exists?
could you please suggest some CFLAG that would be appropriate for my setup? I don't understand CFLAGS all that well. TIA
the error was reproduced with the following command: ACCEPT_KEYWORDS="~x86" CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer" emerge -u xine-lib using CFLAGS per <a href="http://www.freehackers.org/gentoo/gccflags/flag_gcc3.html">FreeHackers.org</a>h
error reproduced again with: ACCEPT_KEYWORDS="~x86" CFLAGS="-march=pentium4 -O3 -pipe" emerge -u xine-lib
ACCEPT_KEYWORDS="~x86" CFLAGS="-march=pentium4" emerge xine-lib returns: /bin/sh ../../../../libtool-nofpic --mode=compile 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 -DSIMPLE_IDCT -DHAVE_AV_CONFIG_H -DRUNTIME_CPUDETECT -DUSE_FASTMEMCPY -DCONFIG_RISKY -DCONFIG_DECODERS -DXINE_MPEG_ENCODER `echo -Wall -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE -Wpointer-arith -Wnested-externs -Wcast-align -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -march=pentium4 | sed -e 's/-funroll-loops//g'` -c -o libavcodec_ppc_dummy.lo `test -f 'libavcodec_ppc_dummy.c' || echo './'`libavcodec_ppc_dummy.c /bin/sh ../../../../libtool-nofpic --mode=link gcc -DSIMPLE_IDCT -DHAVE_AV_CONFIG_H -DRUNTIME_CPUDETECT -DUSE_FASTMEMCPY -DCONFIG_RISKY -DCONFIG_DECODERS -DXINE_MPEG_ENCODER `echo -Wall -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE -Wpointer-arith -Wnested-externs -Wcast-align -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -march=pentium4 | sed -e 's/-funroll-loops//g'` -o libavcodec_ppc.la libavcodec_ppc_dummy.lo make[5]: Leaving directory `/var/tmp/portage/xine-lib-1_rc3-r1/work/xine-lib-1-rc3a/src/libffmpeg/libavcodec/ppc' Making all in libpostproc make[5]: Entering directory `/var/tmp/portage/xine-lib-1_rc3-r1/work/xine-lib-1-rc3a/src/libffmpeg/libavcodec/libpostproc' source='postprocess.c' object='postprocess.lo' libtool=yes \ depfile='.deps/postprocess.Plo' tmpdepfile='.deps/postprocess.TPlo' \ depmode=gcc3 /bin/sh ../../../../depcomp \ /bin/sh ../../../../libtool-nofpic --mode=compile 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 -DSIMPLE_IDCT -DHAVE_AV_CONFIG_H -DRUNTIME_CPUDETECT -DUSE_FASTMEMCPY -DCONFIG_RISKY -DCONFIG_DECODERS -DXINE_MPEG_ENCODER -Wall -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE -Wpointer-arith -Wnested-externs -Wcast-align -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -march=pentium4 -c -o postprocess.lo `test -f 'postprocess.c' || echo './'`postprocess.c In file included from postprocess.c:477: postprocess_template.c: In function `postProcess_MMX2': postprocess_template.c:1156: error: can't find a register in class `GENERAL_REGS' while reloading `asm' postprocess_template.c:1156: error: can't find a register in class `GENERAL_REGS' while reloading `asm' make[5]: *** [postprocess.lo] Error 1 make[5]: Leaving directory `/var/tmp/portage/xine-lib-1_rc3-r1/work/xine-lib-1-rc3a/src/libffmpeg/libavcodec/libpostproc' make[4]: *** [all-recursive] Error 1 make[4]: Leaving directory `/var/tmp/portage/xine-lib-1_rc3-r1/work/xine-lib-1-rc3a/src/libffmpeg/libavcodec' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/var/tmp/portage/xine-lib-1_rc3-r1/work/xine-lib-1-rc3a/src/libffmpeg' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/xine-lib-1_rc3-r1/work/xine-lib-1-rc3a/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/xine-lib-1_rc3-r1/work/xine-lib-1-rc3a' make: *** [all] Error 2 !!! ERROR: media-libs/xine-lib-1_rc3-r1 failed. !!! Function src_compile, Line 105, Exitcode 2 !!! Parallel make failed
Same probleme here. Using -march=pentium3 instead of -march=pentium4 works.
I encounted the same problem when using "-march=pentium4", after replacing it with "-march=pentium3", the problem was fixed.
replacing -march=pentium4 to -march=pentium3 worked... KDE3.2 here we come. Thanks Jens!
What exact version of gcc (gcc-3.3.2-r5/6 ?).
gcc-3.3.2-r5
try enable sse and mmx USE flags
*** Bug 40880 has been marked as a duplicate of this bug. ***
If you append -mno_sse2 to the flags, it will compile with -march=pentium4. I hand edited the gcc-version if statement to 3.3 instead of 3.2 and it compiled fine.
Quick typo correction: this flag is -mno-sse2 (a hyphen, not an underscore)
*** Bug 41054 has been marked as a duplicate of this bug. ***
This also occurs with 1_rc2 and -march=pentium4, and the same fix works: temporarily putting -mno-sse2 in the USE flags lets it compile just fine. The ebuild should probably just be modified for '3.2' or '3.3.'
Same problem here, same place: Portage 2.0.50-r1 (default-x86-2004.0, gcc-3.3.2, glibc-2.3.2-r9, 2.6.3-rc1-gentoo) ================================================================= System uname: 2.6.3-rc1-gentoo i686 Intel(R) Pentium(R) 4 CPU 2.40GHz Gentoo Base System version 1.4.3.13 Autoconf: sys-devel/autoconf-2.58 Automake: sys-devel/automake-1.7.7 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -fomit-frame-pointer -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O2 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://distro.ibiblio.org/pub/linux/distributions/gentoo/ ftp://ftp.gtlib.cc.gatech.edu/pub/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 X509 acpi alsa amd autofs avi berkdb bidi bluetooth bonobo cdr cjk crypt cups dga dnd doc dv dvb dvd encode esd ethereal fbcon flac flash gif gimpprint glade gnome gnomedb gphoto2 gpm gtk gtk2 gtkhtml imagemagick imlib input_devices_synaptics ipv6 irda javascript jpeg mad mikmod mldonkeypango mmx motif mozilla mpeg mpeg4 ncurses nls nptl offensive oggvorbis opengl oss pam pcmcia pda pdflib perl pic pie png pnp python quicktime radeon readline sdl slang spell sse ssl svg svga tcpd threads tiff truetype trusted type1 unicode usb video_cards_radeon videos wmf x86 xinerama xml2 xmms xv zlib"
*** Bug 41769 has been marked as a duplicate of this bug. ***
This workaround does NOT work for me, I still get make[4]: Entering directory `/var/tmp/portage/xine-lib-1_rc2/work/xine-lib-1-rc2/src/post/goom' source='zoom_filter_mmx.c' object='zoom_filter_mmx.lo' libtool=yes \ depfile='.deps/zoom_filter_mmx.Plo' tmpdepfile='.deps/zoom_filter_mmx.TPlo' \ depmode=gcc3 /bin/sh ../../../depcomp \ /bin/sh ../../../libtool-nofpic --mode=compile 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 `echo -Wall -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE -Wpointer-arith -Wnested-externs -Wcast-align -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -O3 -mcpu=pentium4 -march=pentium4 -funroll-loops -pipe -I/usr/kde/3.2/include/artsc -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include | sed -e 's/-fomit-frame-pointer//g'` -c -o zoom_filter_mmx.lo `test -f 'zoom_filter_mmx.c' || echo './'`zoom_filter_mmx.c zoom_filter_mmx.c:16: warning: no previous prototype for `zoom_filter_mmx_supported' source='zoom_filter_xmmx.c' object='zoom_filter_xmmx.lo' libtool=yes \ depfile='.deps/zoom_filter_xmmx.Plo' tmpdepfile='.deps/zoom_filter_xmmx.TPlo' \ depmode=gcc3 /bin/sh ../../../depcomp \ /bin/sh ../../../libtool-nofpic --mode=compile 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 `echo -Wall -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE -Wpointer-arith -Wnested-externs -Wcast-align -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -O3 -mcpu=pentium4 -march=pentium4 -funroll-loops -pipe -I/usr/kde/3.2/include/artsc -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include | sed -e 's/-fomit-frame-pointer//g'` -c -o zoom_filter_xmmx.lo `test -f 'zoom_filter_xmmx.c' || echo './'`zoom_filter_xmmx.c zoom_filter_xmmx.c:23: warning: no previous prototype for `zoom_filter_xmmx_supported' zoom_filter_xmmx.c:31: warning: no previous prototype for `zoom_filter_xmmx' zoom_filter_xmmx.c: In function `zoom_filter_xmmx': zoom_filter_xmmx.c:40: warning: unused variable `interpix' {standard input}: Assembler messages: {standard input}:73: Error: suffix or operands invalid for `add' make[4]: *** [zoom_filter_xmmx.lo] Error 1 make[4]: Leaving directory `/var/tmp/portage/xine-lib-1_rc2/work/xine-lib-1-rc2/src/post/goom' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/var/tmp/portage/xine-lib-1_rc2/work/xine-lib-1-rc2/src/post' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/xine-lib-1_rc2/work/xine-lib-1-rc2/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/xine-lib-1_rc2/work/xine-lib-1-rc2' make: *** [all] Error 2 !!! ERROR: media-libs/xine-lib-1_rc2 failed. !!! Function src_compile, Line 97, Exitcode 2 !!! Parallel make failed using USE="acpi alsa apm arts avi berkdb bonobo cdr crypt cups curl dga directfb doc dvb dvd emac s emacs-w3 encode esd ethereal evo fbcon flash foomaticdb gb gd gdbm ggi gif gnome gphoto2 gpm gtk gtk2 gtkhtml imap imagemagick imlib innodb java jpeg kde lcms ldap libwww mad mbox mcal mikmod memlimit mmx motif lesstif mozilla mpeg mpi mysql nas ncurses nls nocd odbc ogg vorbis opengl oss pam pda ppds pdflib perl plotutils pnp png python qt quicktime readline s amba sasl scanner sdl slang slp snmp spell sse ssl tcpd tetex tiff truetype trusted unicode usb videos wmf X Xaw3d xface xinerama xosd xml xml2 xmms xv zlib svga -mno-sse2"
Change your -march=pentium4 to -march=pentium3
just add -mmmx to your cflags and mmx to your use flags
Setting --march to pentium3 seems to work. Any idea on how to fix that in Portage?
tested with new build system all with CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer" failed on package xine-lib with pentium3 CFLAGS works flawless
fixed in cvs does the same trick as gcc 3.2 was stable
*** Bug 40686 has been marked as a duplicate of this bug. ***