With the new release of k3b-0.11.11, transcode needs to drop back to version 0.6.11. However, this version of transcode sdoes not build with gcc-3.4.0. I get a lot of undefined reference messages like so: /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(dsputil_mmx.o)(.text+0x3f4b0):i386/dsputil_mmx.c:1494: undefined reference to `ff_pw_3' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(dsputil_mmx.o)(.text+0x3f4d1):i386/dsputil_mmx.c:1494: undefined reference to `ff_pw_20' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(dsputil_mmx.o)(.text+0x3f500):i386/dsputil_mmx.c:1494: undefined reference to `ff_pw_3' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(dsputil_mmx.o)(.text+0x3f51e):i386/dsputil_mmx.c:1494: undefined reference to `ff_pw_20' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(dsputil_mmx.o)(.text+0x3f54d):i386/dsputil_mmx.c:1494: undefined reference to `ff_pw_3' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(dsputil_mmx.o)(.text+0x3f56e):i386/dsputil_mmx.c:1494: undefined reference to `ff_pw_20' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(dsputil_mmx.o)(.text+0x3f59a):i386/dsputil_mmx.c:1494: undefined reference to `ff_pw_3' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(dsputil_mmx.o)(.text+0x3f5b8):i386/dsputil_mmx.c:1494: undefined reference to `ff_pw_20' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(dsputil_mmx.o)(.text+0x3f5e4):i386/dsputil_mmx.c:1494: undefined reference to `ff_pw_3' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(motion_est_mmx.o)(.text+0xc13): In function `pix_abs8x8_xy2_mmx2': i386/motion_est_mmx.c:118: undefined reference to `bone' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(motion_est_mmx.o)(.text+0x1023): In function `pix_abs16x16_xy2_mmx2': i386/motion_est_mmx.c:118: undefined reference to `bone' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(motion_est_mmx.o)(.text+0x10a3):i386/motion_est_mmx.c:118: undefined reference to `bone' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(simple_idct_mmx.o)(.text+0x26): In function `ff_simple_idct_mmx': i386/simple_idct_mmx.c:212: undefined reference to `wm1010' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(simple_idct_mmx.o)(.text+0x126):i386/simple_idct_mmx.c:212: undefined reference to `d40000' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(simple_idct_mmx.o)(.text+0x1e6a): In function `ff_simple_idct_put_mmx': i386/simple_idct_mmx.c:212: undefined reference to `wm1010' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(simple_idct_mmx.o)(.text+0x1f66):i386/simple_idct_mmx.c:212: undefined reference to `d40000' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(simple_idct_mmx.o)(.text+0x3c5a): In function `ff_simple_idct_add_mmx': i386/simple_idct_mmx.c:212: undefined reference to `wm1010' /home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/ffmpeg/libavcodec/libtcavcodec.a(simple_idct_mmx.o)(.text+0x3d56):i386/simple_idct_mmx.c:212: undefined reference to `d40000' collect2: ld returned 1 exit status make[3]: *** [tcdecode] Error 1 make[3]: Leaving directory `/home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/import' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/import' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11' make: *** [all] Error 2 !!! ERROR: media-video/transcode-0.6.11 failed. !!! Function src_compile, Line 122, Exitcode 2 !!! (no error message) although there are many more of them -- enough to flood my terminal window buffer. Reproducible: Always Steps to Reproduce: 1.emerge k3b-0.11.11, which forces transcode to drop to version 0.6.11 from 0.6.12-r1. Actual Results: error message as above. Expected Results: emerge transcode-0.6.11 and then k3b-0.11.11 # emerge info Portage 2.0.50-r8 (default-x86-1.4, gcc-3.4.0, glibc-2.3.4.20040605-r1, 2.6.6-mm5) ================================================================= System uname: 2.6.6-mm5 i686 Pentium III (Coppermine) Gentoo Base System version 1.4.16 ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=pentium3 -O2 -mno-align-stringops -minline-all-stringops -fno-crossjumping -fmove-all-movables -mno-push-args -fno-delayed-branch -fno-thread-jumps -fno-defer-pop -Wall -pipe" 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/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=pentium3 -O2 -mno-align-stringops -minline-all-stringops -fno-crossjumping -fmove-all-movables -mno-push-args -fno-delayed-branch -fno-thread-jumps -fno-defer-pop -Wall -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://128.213.5.34/gentoo/ http://open-systems.ufl.edu/mirrors/gentoo ftp://ftp.ussg.iu.edu/pub/linux/gentoo http://ftp6.uni-erlangen.de/pub/mirrors/gentoo http://gentoo.eliteitminds.com ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo http://ftp.heanet.ie/pub/gentoo/ http://gentoo.llarian.net/ http://gentoo.binarycompass.org http://gentoo.tiscali.nl/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/home/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="X acpi acpi4linux alsa apm arts avi berkdb bindist bonobo cdr crypt cups curl dga dvb dvd encode esd fam foomaticdb gcj gdbm gif gimpprint gpm gtk2 imap imlib imlib2 ipv6 java javamail jpeg kde ldap libg++ libwww live mad mikmod mmx motif mpeg music ncurses nls nptl objc oggvorbis opengl oss pam pcmcia pda pdflib perl pic png python qt quicktime rage128 readline samba sdl slang slp spell sse ssl svga tcpd tiff truetype usb x86 xml2 xmms xv zlib"
This compilation also fails for me, but with different error messages: [snip] In file included from af6_decore.cpp:39: /usr/include/avifile-0.7/cpuinfo.h:4:2: warning: #warning Use #include "avm_cpuinfo.h" instead In file included from af6_decore.cpp:43: /usr/include/avifile-0.7/creators.h:4:2: warning: #warning Use #include "avm_creators.h" instead In file included from af6_decore.cpp:38: /usr/include/avifile-0.7/aviplay.h:15: error: default arguments are only permitted for function parameters /usr/include/avifile-0.7/aviplay.h:16: error: default arguments are only permitted for function parameters af6_decore.cpp: In function `void af6_decore(info_t*)': af6_decore.cpp:402: warning: comparison between signed and unsigned integer expressions af6_decore.cpp:404: warning: comparison between signed and unsigned integer expressions af6_decore.cpp:419: warning: comparison between signed and unsigned integer expressions af6_decore.cpp:421: warning: comparison between signed and unsigned integer expressions af6_decore.cpp:427: warning: comparison between signed and unsigned integer expressions make[3]: *** [af6_decore.lo] Error 1 make[3]: Leaving directory `/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/import' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11/import' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/transcode-0.6.11/work/transcode-0.6.11' make: *** [all] Error 2 !!! ERROR: media-video/transcode-0.6.11 failed. !!! Function src_compile, Line 122, Exitcode 2 !!! (no error message) "emerge info" details for comparison: Portage 2.0.50-r8 (default-x86-2004.0, gcc-3.4.0, glibc-2.3.4.20040605-r1, 2.6.5-gentoo-r1) ================================================================= System uname: 2.6.5-gentoo-r1 i686 AMD Athlon(tm) XP 1800+ Gentoo Base System version 1.4.16 ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer" 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/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="3dnow X acpi alsa apache2 apm arts avi berkdb cdr crypt cups dvd encode fbcon foomaticdb freetype gdbm gif gimpprint gpm gps gtk gtk2 imagemagick imlib java jpeg kde libg++ libwww mad mikmod mmx motif mozilla mpeg ncurses nptl oggvorbis opengl pam pdflib perl png ppds python quicktime readline sdk sdl slang snmp spell sse ssl svga tcpd truetype usb x86 xml2 xv zlib"
I also have the same error as paul.. Portage 2.0.51_pre10 (2004.0, gcc-3.4.0, glibc-2.3.4.20040605-r0, 2.6.7-rc3-love2) ================================================================= System uname: 2.6.7-rc3-love2 i686 Intel(R) Pentium(R) 4 CPU 1.70GHz Gentoo Base System version 1.4.16 Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5 Binutils: sys-devel/binutils-2.14.90.0.8-r1 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=pentium4 -ftracer -mfpmath=sse -ffast-math -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.2/share/config /usr/kde/3.3/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=pentium4 -ftracer -mfpmath=sse -ffast-math -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/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 acpi alsa apache2 apm arts avi berkdb cdr crypt cups encode esd fbcon flac foomaticdb gdbm gif gimpprint gpm gtk gtk2 imlib java jpeg kde libg++ libwww mad mikmod mmx motif moznocompose moznoirc mpeg mysql ncurses nls nptl oggvorbis opengl oss pam pdflib perl png python qt quicktime readline samba sdl slang spell sse ssl svga tcpd tiff truetype x86 xml2 xmms xv zlib"
An update: after reemerging avifile (which was suggested in an earlier transcode bug report), I now get the same ffmpeg-related "undefined reference" errors as Wilbur. Reemerging ffmpeg didn't help; is transcode-0.6.11 dependent on an earlier ffmpeg release? Also, during the configuration process for transcode-0.6.11, it claims that I don't have libfame >= 0.9.0, yet I have 0.9.0-r1 installed. libfame-config returns the version as "0.9.0", so I don't understand why this doesn't pass the test. Again, reemerging libfame (in case of an installation issue, as suggested in the configuration message) didn't help.
I think the similar errors occur for transcode 0.6.12-r1.. I need to get this working for k3b to upgrade to it's next version.
can you please meerge sync, then try to emerge transcode-0.6.12-r1 it should work with gcc 3.4 for quite some time now
0.6.12 does compile with gcc-3.4, but 0.6.11 is still an issue because the app-cdr/k3b ebuild depends on <0.6.12 for architectures other than amd64. So those of us running gcc-3.4 on x86 can't emerge k3b.
It compiles on x86 for me if I append the CFLAG -fno-unit-at-a-time. On another note I saw someone else mentioned that during configure libfame > 0.9.0 returned no, yet /usr/bin/libfame-config --version returns 0.9.0. Not sure why this is happening, but I'm experiencing it as well. Should this be opened as a new bug? if so under transcode or libfame?
Having libfame problem as well: http://bugs.gentoo.org/show_bug.cgi?id=45736
Instead of changing CFLAGS we could use append-flags in the ebuild to add -fno-unit-at-a-time
Yes I used append-flags -fno-unti-at-a-time in the ebuild, I know there's a way to do something based on the fact that gcc-3.4.x is used, I'm assuming some sort of conditional statement. I'm just not too familiar with making ebuilds myself.
Try something like this: if [ "`gcc-major-version`" -ge "3" -a "`gcc-minor-version`" -ge "4" ] then append-flags -fno-unit-at-a-time fi
Fix committed. Thanks Michael and spiralvoice!