Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 146335 - media-libs/libvisual-0.2.0 fails to compile under GCC 4.1.1
Summary: media-libs/libvisual-0.2.0 fails to compile under GCC 4.1.1
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GCC Porting (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Sound Team
URL:
Whiteboard:
Keywords:
Depends on: 154616 154636
Blocks: gcc41-stable
  Show dependency tree
 
Reported: 2006-09-04 18:10 UTC by Harlan Lieberman-Berg (RETIRED)
Modified: 2006-12-10 08:15 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Harlan Lieberman-Berg (RETIRED) gentoo-dev 2006-09-04 18:10:06 UTC
if /bin/sh ../libtool --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../libvisual -I.. -I../libvisual   -DPLUGPATH="\"/usr/lib/libvisual\"" -O2 -march=i686 -pipe   -MT lv_video_mmx.lo -MD -MP -MF ".deps/lv_video_mmx.Tpo" -c -o lv_video_mmx.lo lv_video_mmx.c; \
then mv -f ".deps/lv_video_mmx.Tpo" ".deps/lv_video_mmx.Plo"; else rm -f ".deps/lv_video_mmx.Tpo"; exit 1; fi
 i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../libvisual -I.. -I../libvisual -DPLUGPATH=\"/usr/lib/libvisual\" -O2 -march=i686 -pipe -MT lv_video_mmx.lo -MD -MP -MF .deps/lv_video_mmx.Tpo -c lv_video_mmx.c  -fPIC -DPIC -o .libs/lv_video_mmx.o
lv_video_mmx.c: In function '_lv_blit_overlay_alpha32_mmx':
lv_video_mmx.c:60: error: unknown register name 'mm6' in 'asm'
lv_video_mmx.c:69: error: unknown register name 'mm7' in 'asm'
lv_video_mmx.c:69: error: unknown register name 'mm6' in 'asm'
lv_video_mmx.c:69: error: unknown register name 'mm5' in 'asm'
lv_video_mmx.c:69: error: unknown register name 'mm4' in 'asm'
lv_video_mmx.c:69: error: unknown register name 'mm3' in 'asm'
lv_video_mmx.c:69: error: unknown register name 'mm2' in 'asm'
lv_video_mmx.c:69: error: unknown register name 'mm1' in 'asm'
lv_video_mmx.c:69: error: unknown register name 'mm0' in 'asm'
lv_video_mmx.c: In function '_lv_scale_bilinear_32_mmx':
lv_video_mmx.c:150: error: unknown register name 'mm7' in 'asm'
lv_video_mmx.c:150: error: unknown register name 'mm6' in 'asm'
lv_video_mmx.c:150: error: unknown register name 'mm5' in 'asm'
lv_video_mmx.c:150: error: unknown register name 'mm4' in 'asm'
lv_video_mmx.c:150: error: unknown register name 'mm3' in 'asm'
lv_video_mmx.c:150: error: unknown register name 'mm2' in 'asm'
lv_video_mmx.c:150: error: unknown register name 'mm1' in 'asm'
lv_video_mmx.c:150: error: unknown register name 'mm0' in 'asm'
make[2]: *** [lv_video_mmx.lo] Error 1
make[2]: Leaving directory `/var/tmp/portage/libvisual-0.2.0/work/libvisual-0.2.0/libvisual'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/libvisual-0.2.0/work/libvisual-0.2.0'
make: *** [all] Error 2

!!! ERROR: media-libs/libvisual-0.2.0 failed.
Call stack:
  ebuild.sh, line 1539:   Called dyn_compile
  ebuild.sh, line 939:   Called src_compile
  libvisual-0.2.0.ebuild, line 27:   Called die

!!! (no error message)
!!! If you need support, post the topmost build error, and the call stack if relevant.


Portage 2.1-r2 (default-linux/x86/2006.1/desktop, gcc-4.1.1, glibc-2.4-r3, 2.6.17-gentoo-r7 i686)
=================================================================
System uname: 2.6.17-gentoo-r7 i686 Intel(R) Pentium(R) M processor 1.50GHz
Gentoo Base System version 1.12.4
ccache version 2.3 [enabled]
app-admin/eselect-compiler: [Not Present]
dev-lang/python:     2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.3
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo"
LINGUAS="en"
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.gentoo.org/gentoo-portage"
USE="x86 X aac acpi alsa arts asf avi bash-completion berkdb bitmap-fonts cairo cdparanoia cdr cli cpudetection crypt cups dbus dhcp dri dv dvd dvdr dvdread eds emacs emboss encode esd fam firefox flac fortran gdbm gif gimpprint gnutls gpm gstreamer gtk hal ipv6 isdnlog javascript jpeg jpeg2k kde ldap libg++ logitech-mouse mad matroska matrox mikmod mp3 mpeg musepack musicbrainz ncurses nls nptl nptlonly offensive ogg opengl oss pam pcmcia pcre pda pdf pdflib perl png ppds pppd python qt3 qt4 quicktime readline real reflection samba sdl session speex spell spl ssl stroke svg tcpd tetex theora truetype truetype-fonts type1-fonts udev unicode v4l v4l2 vcd vdr visualization vorbis wifi win32codecs xml xmlreader xmlrpc xorg xv zlib elibc_glibc input_devices_keyboard input_devices_mouse input_devices_evdev kernel_linux linguas_en userland_GNU video_cards_radeon video_cards_vesa video_cards_fbdev"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, MAKEOPTS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Comment 1 Ryan Hill (RETIRED) gentoo-dev 2006-09-04 21:00:22 UTC
does it go away with -fomit-frame-pointer?  how about libvisual-0.4.0?
Comment 2 Colleen 2006-09-05 16:57:34 UTC
(In reply to comment #1)
> does it go away with -fomit-frame-pointer?  how about libvisual-0.4.0?

I tried this and it *doesn't* go away with -fomit-frame-pointer.  However, I *was* able to emerge libvisual-0.4.0 with no problem.
 
Comment 3 Bo Ørsted Andresen (RETIRED) gentoo-dev 2006-09-05 18:23:44 UTC
It turns out that I am able to reproduce with:

CFLAGS="-O2 -march=i686 -pipe" emerge -va1 libvisual

However it goes away with:

CFLAGS="-O2 -march=i686 -pipe -mmmx" emerge -va1 libvisual

Portage 2.1-r2 (default-linux/x86/2006.1/desktop, gcc-4.1.1, glibc-2.4-r3, 2.6.17-suspend2-r4 i686)
=================================================================
System uname: 2.6.17-suspend2-r4 i686 Intel(R) Pentium(R) M processor 1600MHz
Gentoo Base System version 1.12.4
app-admin/eselect-compiler: [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:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r5
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=pentium-m -Os -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/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/splash /etc/terminfo"
CXXFLAGS="-march=pentium-m -Os -pipe"
DISTDIR="/opt/distfiles"
FEATURES="autoconfig buildpkg collision-protect distlocks fixpackages metadata-transfer parallel-fetch sandbox sfperms splitdebug strict test userfetch"
GENTOO_MIRRORS="http://mirror.uni-c.dk/pub/gentoo http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo"
LC_ALL="en_GB.utf8"
LINGUAS="da en en_GB"
MAKEOPTS="-j2"
PKGDIR="/opt/packages"
PORTAGE_RSYNC_EXTRA_OPTS="--timeout=60"
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"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://zlin.dk/gentoo-portage"
USE="x86 X aac acpi alsa asf avi bash-completion berkdb bitmap-fonts bluetooth bzip2 cairo cdr cli crypt css cups dlloader dri dvd dvdr emboss encode fam fat fbcon ffmpeg firefox flac fortran gdbm gif gphoto2 gpm i8x0 ieee1394 imagemagick irda irmc isdnlog jfs jpeg kde kdehiddenvisibility libg++ logitech-mouse mad mikmod mmx mmxext mp3 mpeg mplayer msn ncurses nls nptl nptlonly nsplugin ntfs ogg opengl pam pcre pdf pdflib perl png ppds pppd python qt3 quicktime readline real reflection reiser4 reiserfs scanner sdl session slp spell spl sse sse2 ssl subversion svg svga syslog tcpd tetex tiff truetype truetype-fonts type1-fonts udev unicode usb vcd vorbis wifi win32codecs xcomposite xfs xine xml xorg xscreensaver xv xvid zlib elibc_glibc input_devices_evdev input_devices_keyboard input_devices_mouse input_devices_synaptics input_devices_void kernel_linux linguas_da linguas_en linguas_en_GB userland_GNU video_cards_fbdev video_cards_fglrx video_cards_i810 video_cards_radeon video_cards_vesa"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LDFLAGS
Comment 4 Amit Pansare 2006-09-05 22:44:41 UTC
Same problem, Bo 
Comment 5 Amit Pansare 2006-09-05 22:44:41 UTC
Same problem, Bo Ørsted Andresen soluntion worked for me.

Portage 2.1-r2 (default-linux/x86/2006.0, gcc-4.1.1, glibc-2.4-r3, 2.6.17-gentoo-r4 i686)
=================================================================
System uname: 2.6.17-gentoo-r4 i686 Intel(R) Pentium(R) 4 CPU 2.60GHz
Gentoo Base System version 1.12.4
app-admin/eselect-compiler: [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:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r5
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -mtune=pentium4 -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/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -march=i686 -mtune=pentium4 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="ftp://ftp.ucsb.edu/pub/mirrors/linux/gentoo/"
LC_ALL="en_US.UTF-8"
LINGUAS="en"
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.namerica.gentoo.org/gentoo-portage"
USE="x86 16bit X X509 a52 aac aalib acl acpi alsa amd apache2 apm arts artswrappersuid automount avahi avi bash-completion berkdb binary-drivers bitmap-fonts bonobo bootsplash bzip2 c++ cacheemu caps cdda cddb cdparanoia chroot clamav clamd cli cpudetection crypt cscope cups dbus dga dlloader dri dvd dvdr dvdread eds emboss encode erandom esd fastcgi fbcon fbsplash foomaticdb fortran gdbm gif gimp gimpprint gnome gphoto2 gpm gstreamer gtk gtk2 h323 hal hardened hddtemp httpd imagemagick imap imlib innodb ipod ipv6 java jpeg kde kdeenablefinal kdexdeltas ldap libcaca libg++ libwww lm_sensors mad mikmod mime mjpeg mmap mmx mmxext motif mozdevelop mp3 mpeg mpi mplayer msn musicbrainz mysql mysqli nas nautilus ncurses nfs nls nptl nptlonly nsplugin ntfs nvidia odbc offensive ogg opengl openssh openssl oss pam pam_chroot pam_console pam_timestamp pcre pdflib perl png prelude profile python qt-static qt3 qt4 quicktime rdesktop readline real reflection reiserfs ruby samba scanner screen sdk sdl session sftplogging slang slp sndfile snmp soap sockets socks5 sox spell spl sqlite sqlite3 sse sse2 ssl startup-notification subtitles subversion svg svga tcpd tidy tiff truetype truetype-fonts type1-fonts udev unicode usb userlocales v4l v4l2 vcd vfat vhosts vim vim-pager vim-with-x visualization vorbis webdav webservices win32codecs winbind wmf x264 xanim xine xinerama xinetd xml xmlrpc xmms xorg xosd xpm xprint xrandr xscreensaver xv xvid xvmc yahoo zeroconf zlib elibc_glibc input_devices_keyboard input_devices_mouse kernel_linux linguas_en userland_GNU video_cards_nvidia video_cards_bga video_cards_vesa"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LDFLAGS, MAKEOPTS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Comment 6 Diego Elio Pettenò (RETIRED) gentoo-dev 2006-10-01 23:48:37 UTC
I cannot reproduce on AMD64, x86 team please take care.
Comment 7 Chris Gianelloni (RETIRED) gentoo-dev 2006-10-03 14:31:09 UTC
Ehh... the ebuild needs to honor the mmx USE flag.  You wouldn't be able to reproduce it on amd64, since amd64 always has MMX capabilities.  It looks like the best solution is to stabilize the newer version, if it doesn't break other things.  

Reassigning to sound.

Sound team: if you want us to stabilize, add the arches to CC.
Comment 8 Christian Faulhammer (RETIRED) gentoo-dev 2006-10-04 16:21:45 UTC
(In reply to comment #6)
> Ehh... the ebuild needs to honor the mmx USE flag.  You wouldn't be able to
> reproduce it on amd64, since amd64 always has MMX capabilities.  It looks like
> the best solution is to stabilize the newer version, if it doesn't break other
> things.  

 0.2.0 is needed explicitly by most packages (xmms-libvisual, lives), so 0.2.0 needs to be fixed.
Comment 9 Chris Gianelloni (RETIRED) gentoo-dev 2006-10-12 15:29:54 UTC
I guess a simple check for USE="mmx" on x86 and a die if not would work.  It's ugly, but it works.
Comment 10 Joshua Jackson (RETIRED) gentoo-dev 2006-10-24 21:59:16 UTC
As 0.4.0 is stable on x86 now, I don't believe this is a issue anymore so I'm going to close it. if its still a issue please reopen.
Comment 11 Christian Faulhammer (RETIRED) gentoo-dev 2006-10-25 00:35:40 UTC
media-plugins/gst-plugins-libvisual 0.8 and 0.10
media-plugins/libvisual-plugins-0.2
media-video/lives

depend on libvisual-0.2* explicitly, so this is NOT fixed yet.  So either update above reverse dependencies if possible or fix version 0.2.
Comment 12 Ryan Hill (RETIRED) gentoo-dev 2006-12-09 13:38:32 UTC
i'm sure this won't bump my karma meter, but let's just force MMX.  it's not a full solution, but i'm betting people with processors that don't handle MMX building funky dynamic eyecandy generation plugins is a corner case.  it's also what Fedora did for FC4.


Index: libvisual-0.2.0.ebuild
===================================================================
RCS file: /var/cvsroot/gentoo-x86/media-libs/libvisual/libvisual-0.2.0.ebuild,v
retrieving revision 1.9
diff -u -B -r1.9 libvisual-0.2.0.ebuild
--- libvisual-0.2.0.ebuild      24 Feb 2006 23:53:38 -0000      1.9
+++ libvisual-0.2.0.ebuild      9 Dec 2006 21:17:16 -0000
@@ -2,7 +2,7 @@
 # Distributed under the terms of the GNU General Public License v2
 # $Header: /var/cvsroot/gentoo-x86/media-libs/libvisual/libvisual-0.2.0.ebuild,v 1.9 2006/02/24 23:53:38 geoman Exp $

-inherit eutils
+inherit eutils flag-o-matic

 DESCRIPTION="Libvisual is an abstraction library that comes between applications and audio visualisation plugins."
 HOMEPAGE="http://libvisual.sourceforge.net/"
@@ -23,6 +23,7 @@
 }

 src_compile() {
+       [[ $ARCH == x86 ]]; append-flags -mmmx
        econf $(use_enable static) || die
        emake || die
 }
Comment 13 Samuli Suominen (RETIRED) gentoo-dev 2006-12-09 23:32:57 UTC
> +       [[ $ARCH == x86 ]]; append-flags -mmmx

if use x86 && append-flags -mmmx
Comment 14 Christian Faulhammer (RETIRED) gentoo-dev 2006-12-10 08:15:55 UTC
(In reply to comment #12)
> > +       [[ $ARCH == x86 ]]; append-flags -mmmx
> 
> if use x86 && append-flags -mmmx

use x86 && append-flags -mmmx

Done.