media-libs/libmpeg3-1.5.2-r3 fails to compile with dev-lang/nasm-2.04 and USE="mmx". Compiles ok using dev-lang/nasm-0.98.39-r3. i686-pc-linux-gnu-gcc -fPIC -c `cat i686/c_flags` video/reconstruct.c -o i686/video/reconstruct.lo i686-pc-linux-gnu-gcc -fPIC -c `cat i686/c_flags` video/seek.c -o i686/video/seek.lo i686-pc-linux-gnu-gcc -fPIC -c `cat i686/c_flags` video/slice.c -o i686/video/slice.lo i686-pc-linux-gnu-gcc -fPIC -c `cat i686/c_flags` video/vlc.c -o i686/video/vlc.lo i686-pc-linux-gnu-gcc -fPIC -c `cat i686/c_flags` workarounds.c -o i686/workarounds.lo i686-pc-linux-gnu-gcc -fPIC -c `cat i686/c_flags` video/mmxidct.S -o i686/video/mmxidct.lo ar rcs i686/libmpeg3.a `cat i686/objs` i686-pc-linux-gnu-gcc `cat i686/c_flags` -o i686/mpeg3dump mpeg3dump.c i686/libmpeg3.a -lm -lpthread -la52 i686-pc-linux-gnu-gcc `cat i686/c_flags` -o i686/mpeg3toc mpeg3toc.c i686/libmpeg3.a -lm -lpthread -la52 i686-pc-linux-gnu-gcc `cat i686/c_flags` -o i686/mpeg3cat mpeg3cat.c i686/libmpeg3.a -lm -lpthread -la52 i686/libmpeg3.a(reconstruct.o): In function `.L14': reconstruct.c:(.text+0xede): undefined reference to `recvac_mmx' i686/libmpeg3.a(reconstruct.o): In function `.L13': reconstruct.c:(.text+0xf22): undefined reference to `recva_mmx' i686/libmpeg3.a(reconstruct.o): In function `.L20': reconstruct.c:(.text+0xf5b): undefined reference to `rechc_mmx' i686/libmpeg3.a(reconstruct.o): In function `.L19': reconstruct.c:(.text+0xf87): undefined reference to `rech_mmx' collect2: ld returned 1 exit status make: *** [i686/mpeg3dump] Error 1 make: *** Waiting for unfinished jobs.... i686/libmpeg3.a(reconstruct.o): In function `.L14': reconstruct.c:(.text+0xede): undefined reference to `recvac_mmx' i686/libmpeg3.a(reconstruct.o): In function `.L13': reconstruct.c:(.text+0xf22): undefined reference to `recva_mmx' i686/libmpeg3.a(reconstruct.o): In function `.L20': reconstruct.c:(.text+0xf5b): undefined reference to `rechc_mmx' i686/libmpeg3.a(reconstruct.o): In function `.L19': reconstruct.c:(.text+0xf87): undefined reference to `rech_mmx' collect2: ld returned 1 exit status make: *** [i686/mpeg3cat] Error 1 i686/libmpeg3.a(reconstruct.o): In function `.L14': reconstruct.c:(.text+0xede): undefined reference to `recvac_mmx' i686/libmpeg3.a(reconstruct.o): In function `.L13': reconstruct.c:(.text+0xf22): undefined reference to `recva_mmx' i686/libmpeg3.a(reconstruct.o): In function `.L20': reconstruct.c:(.text+0xf5b): undefined reference to `rechc_mmx' i686/libmpeg3.a(reconstruct.o): In function `.L19': reconstruct.c:(.text+0xf87): undefined reference to `rech_mmx' collect2: ld returned 1 exit status make: *** [i686/mpeg3toc] Error 1 * * ERROR: media-libs/libmpeg3-1.5.2-r3 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 2510: Called die * The specific snippet of code: * emake CC="$(tc-getCC)" || die "make failed" * The die message: * make failed emerge --info: Portage 2.1.4.5 (hardened/x86/2.6, gcc-3.4.6, glibc-2.6.1-r0, 2.6.26-hardened-r2-rc3-2008091301 i686) ================================================================= System uname: 2.6.26-hardened-r2-rc3-2008091301 i686 AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ Timestamp of tree: Sat, 11 Oct 2008 10:45:04 +0000 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] app-shells/bash: 3.2_p33 dev-java/java-config: 1.3.7, 2.1.6 dev-lang/python: 2.4.4-r14, 2.5.2-r7 dev-python/pycrypto: 2.0.1-r6 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.61-r2 sys-devel/automake: 1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.23-r3 ACCEPT_KEYWORDS="x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=athlon64 -msse3 -O2 -fweb -fomit-frame-pointer -fno-ident -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-march=athlon64 -msse3 -O2 -fweb -fomit-frame-pointer -fno-ident -pipe -fno-stack-protector -fno-stack-protector-all" DISTDIR="/usr/portage/distfiles" FEATURES="distclean distlocks parallel-fetch sandbox sfperms strict unmerge-orphans userfetch userpriv usersandbox" GENTOO_MIRRORS="http://gentoo.mirrors.tds.net/gentoo/ http://gentoo.mirrors.easynews.com/linux/gentoo/ http://mirror.datapipe.net/gentoo/ http://gentoo.chem.wisc.edu/gentoo/ http://gentoo.netnitco.net/ http://gentoo.mirrors.pair.com/ http://open-systems.ufl.edu/mirrors/gentoo/" LDFLAGS="-Wl,-O1,--hash-style=gnu" LINGUAS="en en_US en_GB" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_EXTRA_OPTS="--progress --exclude-from=/etc/portage/rsync_excludes" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local/layman/sunrise /usr/local/portage" SYNC="rsync://*yoink*(private)/gentoo-portage" USE="3dnow 3dnowext X Xaw3d a52 aac aalib acl acpi adns alsa ao apache2 audiofile audit bash-completion bcmath berkdb bidi blas bluetooth bzip2 cairo calendar canna caps cdb cddb cdinstall cdparanoia cdr cjk clamav cracklib crypt cscope css ctype cups curl curlwrappers cvs cxx dbm dbus dbx dedicated directfb djvu doc dri dts dv dvb dvd dvdr dvdread encode enscript evo exif expat fam fbcon ffmpeg fftw firefox flac flash flatfile fltk fontconfig foomaticdb fortran freetds freewnn ftp gcj gd gdbm geoip ggi gif gimp ginac glut gmp gnome gnuplot gnutls gphoto2 gpm gps graphviz gsl gstreamer gtk gtkhtml guile hal hardened hddtemp hdf5 iconv idn ieee1394 imagemagick imap imlib inifile ipod ipv6 jack java java5 java6 javascript jbig joystick jpeg jpeg2k kde kerberos ladspa lame lapack lash latex lcms ldap libcaca libgda libnotify libsamplerate libwww lirc lm_sensors logrotate lua lzo mad maildir mailwrapper matroska mbox memlimit mhash midi mikmod mime mmap mmx mmxext mng modplug mono motif mp3 mpeg mpi mplayer mtp musepack musicbrainz nas ncurses neXt netboot netcdf nis nls nntp nocd nptl nptlonly nsplugin ocaml ocamlopt offensive ofx ogg openal openexr opengl osc pam pcntl pcre pda pdf perl php pic plotutils png portaudio posix ppds pulseaudio python qdbm qt3 qt4 quicktime radius rdesktop readline recode rss ruby samba sasl scanner sdl seamonkey session sftp sharedext sharedmem shorten simplexml skey slang slp smartcard smp sndfile snmp soap sockets socks5 sox speex spell spl sqlite sqlite3 sse sse2 sse3 ssl startup-notification subversion svg svga syslog sysvipc szip taglib tcl tcpd theora threads tidy tiff timidity tk tokenizer truetype unicode urandom usb v4l v4l2 vcd vhosts videos vim-syntax vnc vorbis wavpack wddx wifi win32codecs wma wmf wxwindows x264 x86 xattr xcomposite xface xine xinerama xinetd xml xmlrpc xorg xosd xpm xprint xscreensaver xsl xv xvid xvmc yaz zlib" ALSA_CARDS="au8820 ca0106 emu10k1" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse joystick" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US en_GB" USERLAND="GNU" VIDEO_CARDS="apm dummy fbdev nv nvidia v4l vesa vga" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS
libmpeg3-1.7 compiles fine with nasm-2.04 and mmx USE flag set so you might try that version as a quick workaround.
(In reply to comment #1) > libmpeg3-1.7 compiles fine with nasm-2.04 and mmx USE flag set so you might try > that version as a quick workaround. > If that is the case the DEPS should be updated on libmpeg3-1.5.2 and libmpeg3-1.7 (or another version that works with nasm-2.04) considered for test/stable since nasm-2.04 recently went stable.
I've got a similar failure, though the error messages look slightly different (I have nasm-2.04 which is stable on x86) gcc -shared -Wl,-soname=libmpeg3.so -o i686/libmpeg3.so i686/audio/ac3.lo i686/audio/dct.lo i686/audio/huffman.lo i686/audio/layer2.lo i686/audio/layer3.lo i686/audio/mpeg3audio.lo i686/audio/pcm.lo i686/audio/synthesizers.lo i686/audio/tables.lo i686/bitstream.lo i686/libmpeg3.lo i686/mpeg3atrack.lo i686/mpeg3css.lo i686/mpeg3demux.lo i686/mpeg3ifo.lo i686/mpeg3io.lo i686/mpeg3title.lo i686/mpeg3vtrack.lo i686/video/getpicture.lo i686/video/headers.lo i686/video/idct.lo i686/video/macroblocks.lo i686/video/mmxtest.lo i686/video/motion.lo i686/video/mpeg3video.lo i686/video/output.lo i686/video/reconstruct.lo i686/video/seek.lo i686/video/slice.lo i686/video/vlc.lo i686/workarounds.lo i686/video/mmxidct.lo i686/video/reconmmx.o -lm -lpthread -la52 i686-pc-linux-gnu-gcc `cat i686/c_flags` -o i686/mpeg3dump mpeg3dump.c i686/libmpeg3.a -lm -lpthread -la52 mpeg3dump.c: In function 'main': mpeg3dump.c:50: warning: incompatible implicit declaration of built-in function 'strlen' mpeg3dump.c:58: warning: incompatible implicit declaration of built-in function 'strcpy' i686/libmpeg3.a(reconstruct.o): In function `recon_comp': reconstruct.c:(.text+0xc38): undefined reference to `rech_mmx' reconstruct.c:(.text+0xe43): undefined reference to `rechc_mmx' reconstruct.c:(.text+0xe76): undefined reference to `recva_mmx' reconstruct.c:(.text+0xea9): undefined reference to `recvac_mmx' collect2: ld returned 1 exit status make: *** [i686/mpeg3dump] Error 1 * * ERROR: media-libs/libmpeg3-1.5.2-r3 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 2352: Called die * The specific snippet of code: * emake CC="$(tc-getCC)" || die "make failed" * The die message: * make failed localhost portage # emerge --info Portage 2.2_rc12 (default/linux/x86/2008.0/desktop, gcc-4.1.2, glibc-2.6.1-r0, 2.6.26-tuxonice i686) ================================================================= System uname: Linux-2.6.26-tuxonice-i686-Intel-R-_Celeron-R-_CPU_2.66GHz-with-glibc2.0 Timestamp of tree: Sun, 12 Oct 2008 10:15:01 +0000 app-shells/bash: 3.2_p33 dev-lang/python: 2.4.4-r13, 2.5.2-r8 dev-util/cmake: 2.4.6-r1 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.3.0-r1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.61-r2 sys-devel/automake: 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.23-r3 ACCEPT_KEYWORDS="x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=pentium4" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-O2 -march=pentium4" DISTDIR="/usr/portage/distfiles" FEATURES="collision-protect distlocks parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans userfetch" FFLAGS="-O2 -march=pentium4" GENTOO_MIRRORS="ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ ftp://ftp.rz.tu-bs.de/pub/mirror/ftp.gentoo.org/gentoo-distfiles/" LDFLAGS="-Wl,-O1" LINGUAS="ru" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local/layman/sunrise /usr/portage/local/layman/science /usr/portage/local/gentoo-lisp-overlay" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X aac acl acpi alsa bash-completion berkdb blas bluetooth boehm-gc branding browserplugin bzip2 cairo cdr cli cracklib crypt css cups curl dbus doc dri dvd dvdr dvdread eds emacs emboss encode esd evo fam ffmpeg fftw firefox fltk fortran gd gdbm gif gmp gnome gpm gsl gstreamer gtk hal iconv imagemagick isdnlog jpeg kde kerberos lapack latex ldap leim libnotify mad midi mikmod mmx mozilla mp3 mpeg mudflap mule ncurses nls nptl nptlonly nsplugin offensive ogg opengl openmp pam pcre pdf perl plotutils png ppds pppd python qt3 qt3support qt4 quicktime readline reflection sdl session speex spell spl ssl startup-notification svg sysfs tcl tcpd tetex tiff tk truetype umfpack unicode usb vcd vorbis win32codecs wxwindows x86 xine xml xorg xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="ru" USERLAND="GNU" VIDEO_CARDS="i810 vesa fbdev" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Same problem here, with nasm-2.04. Upgrading to latest (unstable) libmpeg3 fixed it.
Same problem here. Forcing a build of 1.7 by adding the ACCEPT_KEYWORDS="~x86" line to my make.conf file and then running emerge =libmpeg3-1.7 fixed it.
+1 (In reply to comment #5) > Same problem here. > Forcing a build of 1.7 by adding the > ACCEPT_KEYWORDS="~x86" > line to my make.conf file and then running > emerge =libmpeg3-1.7 > fixed it. That would upgrade your entire system to unstable, which is probably not what you want. I simply added "=media-libs/libmpeg3-1.7" to my package.keywords, and the problem resolved itself.
Please test if we can stable libmpeg-1.7
amd64/x86 stable
"=media-libs/libmpeg3-1.7"(In reply to comment #7) > Please test if we can stable libmpeg-1.7 > media-libs/libmpeg3-1.7 compiles on my system where media-libs/libmpeg3-1.5.2-r3 was failing. This is a fresh x86-32 2008.0/desktop install (portage updated yesterday - Nov. 1, 2008). Just thought I'd let y'all know. :-) M.
ppc stable
alpha/arm/ia64/sh/sparc stable
ppc64 done
*** Bug 150799 has been marked as a duplicate of this bug. ***
hppa, needs stable keyword. mips, needs ~arch keyword. old ebuild will be dropped anyway.
Stable for HPPA. Not closing because mips still may want to keyword?!
(In reply to comment #15) > Stable for HPPA. Not closing because mips still may want to keyword?! > Yeah, let's wait for a while.. but I doubt there will be any response whatsoever.
(In reply to comment #13) > *** Bug 150799 has been marked as a duplicate of this bug. *** > Opened: 2006-10-10 12:29 0000. As suspected no response from mips, closing as RESOLVED, CANTFIX. Old ebuild removed.