1: `emerge libsdl` with out any optimization ( -O ) flags using gcc-4.1.1 2: `emerge sdl-image` or `emerge sdl-sound` The second step will fail. Both builds complain that they can't find new enough libsdl because their test for it fails. Looking at respective config.log reveals that, /var/tmp/portage/sdl-image-1.2.3-r1/work/SDL_image-1.2.3/config.log: /usr/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../libSDL.so: undefined reference to `BlitRGBtoRGBPixelAlphaMMX3DNOW' and /var/tmp/portage/sdl-sound-1.0.1-r1/work/SDL_sound-1.0.1: /usr/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../libSDL.so: undefined reference to `BlitRGBtoRGBPixelAlphaMMX3DNOW' Step 2 works if libsdl is built with some optimization flag. I tested -Os and -O2 to work.
output from emerge --info please
erin ~ # emerge --info Portage 2.1-r2 (default-linux/x86/2005.1, gcc-4.1.1, glibc-2.3.6-r4, 2.6.17.6 i686) ================================================================= System uname: 2.6.17.6 i686 AMD Athlon(tm) XP 1700+ Gentoo Base System version 1.12.4 app-admin/eselect-compiler: [Not Present] dev-lang/python: 2.3.5-r2, 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-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=athlon-xp -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/X11/xkb" CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo" CXXFLAGS="-O2 -march=athlon-xp -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks metadata-transfer parallel-fetch sandbox sfperms strict" GENTOO_MIRRORS="ftp://trumpetti.atm.tut.fi/gentoo/" LANG="en_US.utf8" LC_ALL="en_US.utf8" 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" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://trumpetti.atm.tut.fi/gentoo-portage/" USE="x86 3dnow 3dnowext X alsa apm avi bash-completion bcp berkdb bitmap-fonts bzip2 cairo cjk cli crypt cups curl dbus dlloader dri dvd dvdread eds emacs emboss extensions foomaticdb fortran gdbm geoip gif gimpprint glitz gpm gstreamer gtk gtk2 imlib ipv6 isdnlog jpeg libg++ libwww linuxthreads-tls mad mikmod mmap mmx mmxext mng motif mozsvg mp3 mpeg musepack ncurses nls nptl nptlonly nvidia ogg oggvorbis opengl pam pcre pdflib perl png pppd python quicktime readline reflection sdl session spl sse ssl svg symlink tcpd tga theora threads tiff truetype truetype-fonts type1-fonts unicode vorbis win32codecs wmf xml2 xmms xorg xv xvid zlib elibc_glibc input_devices_keyboard input_devices_mouse kernel_linux userland_GNU video_cards_nvidia" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, LINGUAS, MAKEOPTS, PORTAGE_RSYNC_EXTRA_OPTS
Sorry, The above has the wrong CFLAGS/CXXFLAGS that include the -O2 flag which I tried last. The failing emerge was otherwise the same sand -O2.
try libsdl-1.2.11 (works fine for me) if that fails, post the config.log from libsdl as an attachmet
*** Bug 146561 has been marked as a duplicate of this bug. ***
Created attachment 96368 [details] libsdl-1.2.11 config.log
not a toolchain bug *** This bug has been marked as a duplicate of 148186 ***