DirectFB won't compile with gcc-3.4.1 fails with error complaining libstdc++ is not a valid libtool archive Reproducible: Always Steps to Reproduce: 1.Try to emerge DirectFB or libsdl 2. 3. Actual Results: It exits with error. Expected Results: It compiles nicely and I continue rebuilding my system with gcc-3.4.1... Here's the error I get: ---------------------- /bin/sh ../../../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I../../.. - I../../../include -I../../../include -I../../ ../src -DDATADIR=\"/usr/share/directfb-0.9.20\" -DSOPATH=\"/ usr/lib/libdirectfb-0.9.so.20\" -DMODULEDIR=\"/usr/lib/ directfb-0.9.20\" "-DBUILDTIME=\"`date -u "+%Y-%m-%d %H:%M"`\"" -I/ usr/include/libmpeg3 -I/usr/include/SDL -D_REENTRANT -D_REENTRANT -Wall -O3 - ffast-math -pipe -mtune=pentium4 -pipe -fno-unit-at-a-time -fPIC -02 - DFUSION_FAKE -Werror-implicit-function-declaration -c sdlinput.c mkdir .libs gcc -DHAVE_CONFIG_H -I. -I. -I../../.. -I../../../include -I../../../include - I../../../src -DDATADIR=\"/usr/share/directfb-0.9.20\" -DSOPATH=\"/usr/lib/ libdirectfb-0.9.so.20\" -DMODULEDIR=\"/usr/lib/directfb-0.9.20\" "- DBUILDTIME=\"2004-07-17 13:59\"" -I/usr/include/libmpeg3 -I/usr/include/SDL - D_REENTRANT -D_REENTRANT -Wall -O3 -ffast-math -pipe -mtune=pentium4 -pipe -fno- unit-at-a-time -fPIC -02 -DFUSION_FAKE -Werror-implicit-function-declaration -c sdlinput.c -DPIC gcc: unrecognized option `-02' mv -f sdlinput.o .libs/sdlinput.o /bin/sh ../../../libtool --mode=link gcc -I/usr/include/SDL -D_REENTRANT - D_REENTRANT -Wall -O3 -ffast-math -pipe -mtune=pentium4 -pipe -fno-unit-at-a- time -fPIC -02 -DFUSION_FAKE -Werror-implicit-function-declaration -lstdc++ -o libdirectfb_sdlinput.la -rpath /usr/lib/directfb-0.9.20/inputdrivers -L/usr/lib -Wl,-rpath,/usr/lib -lSDL -lpthread -export-dynamic -avoid- version -module sdlinput.lo -ldl -lpthread grep: /usr/lib/gcc/i686-pc-linux-gnu/3.4.1/specs/3.4.1/libstdc++.la: Not a directory /bin/sed: can't read /usr/lib/gcc/i686-pc-linux-gnu/3.4.1/specs/3.4.1/libstdc++. la: Not a directory libtool: link: `/usr/lib/gcc/i686-pc-linux-gnu/3.4.1/specs/3.4.1/libstdc++.la' is not a valid libtool archive make[4]: *** [libdirectfb_sdlinput.la] Error 1 make[4]: Leaving directory `/var/tmp/portage/DirectFB-0.9.20/work/DirectFB-0.9. 20/src/core/sdl' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/var/tmp/portage/DirectFB-0.9.20/work/DirectFB-0.9. 20/src/core' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/DirectFB-0.9.20/work/DirectFB-0.9. 20/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/DirectFB-0.9.20/work/DirectFB-0.9. 20' make: *** [all-recursive-am] Error 2 ------------------------------------ Exactly the same happens when I try to emerge libsdl. Here are my specs: ------------------------------------ Portage 2.0.50-r9 (default-x86-1.4, gcc-3.4.1, glibc-2.3.4.20040619-r0, 2.6.5- gentoo-r1-nx1) ================================================================= System uname: 2.6.5-gentoo-r1-nx1 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz Gentoo Base System version 1.4.15 distcc 2.15 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.5-r1 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-mtune=pentium4 -pipe -fno-unit-at-a-time -fPIC -02" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3. 2/share/config /usr/kde/3.3/share/config /usr/kde/3/share/config /usr/lib/ mozilla/defaults/pref /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/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-mtune=pentium4 -pipe -fno-unit-at-a-time -fPIC -02" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs buildpkg ccache fixpackages userpriv" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/ Linux/distributions/gentoo" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X aalib acl acpi alsa apm arts audiofile avi berkdb bindist bonobo caps cdr cjk crypt cups curl dga directfb doc dvd dvdr encode esd ethereal fbcon flac foomaticdb gd gdbm gif gnome gphoto2 gpm gstreamer gtk gtk2 gtkhtml icq imagemagick imlib jabber java jikes jpeg kde ldap libg++ libwww mad mikmod mmx motif mozilla mpeg msn mule mysql nas ncurses nls nptl odbc offensive oggvorbis opengl oscar oss pam pda pdflib perl png pnp prelude python qt quicktime readline samba sdl shared slang spell sse ssl svga tcltk tcpd tetex theora tiff truetype unicode usb video_cards_nvidia x86 xml xml2 xmms xv yahoo zlib" ---------------------------------------- It seems to me I'll get this error with a lot of other packages.
The problem is in libsdl. DirectFB compiles fine with --disable-sdl flag.
Ok. After I've successfully compiled DirectFB I was able to compile libsdl without problems and then recompile DirectFB but with --enable-sdl flag so far so good.
works for me... and now it works for you... that and you have invalid cflags. -02 doesnt exist, -O2 does. plus you use -fPIC... why, i have no idea. libraries should be PIC and executables -not- otherwise you get a bit of a performance hit everywhere but on amd64. i've also noticed that a few apps wont even attempt to compile with gcc 3.4 when using -fno-unit-at-a-time. marking this bug as invalid