alsa-plugins won't compile, apparently due to an upgrade to ffmpeg-0.4.9_p20090121. Achieved compilation by adding "#include <avutil/mem.h>" to a52/pcm_a52.c and altering a52/Makefile's AVCODEC_LIBS to "-lavcodec -lavutil". Obviously a real fix would update the autotool configuration instead. Have also reported this upstream: https://bugtrack.alsa-project.org/alsa-bug/view.php?id=4356 . Reproducible: Always Steps to Reproduce: 1. install sufficiently recent ffmpeg 2. emerge alsa-plugins (probably need ffmpeg use flag) Actual Results: emerge dies with compilation error Expected Results: successful installation This is probably due to a change to ffmpeg.
I think it doesn't come from ffmpeg upgrade. I tried installing alsa-plugins-1.0.19 with the three ffmpeg versions staying in portage, but none succeded. All failed at the same point jez austin mentionned. Here's the text (yes, I use paludis, but this is not where the bug comes from): libtool: link: i686-pc-linux-gnu-gcc -shared .libs/pcm_a52.o -lavcodec /usr/lib/libasound.so -lm -ldl -lpthread -lrt -march=prescott -Wl,--no-undefined -Wl,-O1 -Wl,-soname -Wl,libasound_module_pcm_a52.so -o .libs/libasound_module_pcm_a52.so .libs/pcm_a52.o: In function `a52_free': /var/tmp/paludis/media-plugins-alsa-plugins-1.0.19/work/alsa-plugins-1.0.19/a52/pcm_a52.c:406: undefined reference to `av_free' /var/tmp/paludis/media-plugins-alsa-plugins-1.0.19/work/alsa-plugins-1.0.19/a52/pcm_a52.c:406: undefined reference to `av_free' collect2: ld returned 1 exit status make[2]: *** [libasound_module_pcm_a52.la] Error 1 make[2]: Leaving directory `/var/tmp/paludis/media-plugins-alsa-plugins-1.0.19/work/alsa-plugins-1.0.19/a52' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/paludis/media-plugins-alsa-plugins-1.0.19/work/alsa-plugins-1.0.19' make: *** [all] Error 2 /usr/libexec/paludis/utils/emake: emake returned error 2
this is related to 255581, it's also explained there (wrong linking). I can only confirm that for me it's not working too. Here is the error log: libtool: link: i686-pc-linux-gnu-gcc -shared .libs/pcm_a52.o -lavcodec /usr/lib/libasound.so -lm -ldl -lpthread -lrt -march=i686 -Wl,--no-undefined -Wl,-O1 -Wl,-soname -Wl,libasound_module_pcm_a52.so -o .libs/libasound_module_pcm_a52.so .libs/pcm_a52.o: In function `a52_free': /var/tmp/portage/media-plugins/alsa-plugins-1.0.19/work/alsa-plugins-1.0.19/a52/pcm_a52.c:406: undefined reference to `av_free' collect2: ld returned 1 exit status make[2]: *** [libasound_module_pcm_a52.la] Error 1 make[2]: Leaving directory `/var/tmp/portage/media-plugins/alsa-plugins-1.0.19/work/alsa-plugins-1.0.19/a52' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/media-plugins/alsa-plugins-1.0.19/work/alsa-plugins-1.0.19' make: *** [all] Error 2 emerge --info:emerge --info Portage 2.1.6.7 (default/linux/x86/2008.0, gcc-4.3.2, glibc-2.9_p20081201-r1, 2.6.28-gentoo i686) ================================================================= System uname: Linux-2.6.28-gentoo-i686-Intel-R-_Core-TM-2_CPU_6420_@_2.13GHz-with-glibc2.0 Timestamp of tree: Sat, 24 Jan 2009 21:00:01 +0000 app-shells/bash: 3.2_p48 dev-java/java-config: 1.3.7-r1, 2.1.6-r1 dev-lang/python: 2.4.4-r9, 2.5.4-r2 dev-python/pycrypto: 2.0.1-r6 dev-util/cmake: 2.6.2 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.4.2 sys-apps/sandbox: 1.3.2 sys-devel/autoconf: 2.13, 2.63 sys-devel/automake: 1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.19 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 2.2.6a virtual/os-headers: 2.6.28-r1 ACCEPT_KEYWORDS="x86 ~x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=i686 -pipe -fomit-frame-pointer" 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/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-O2 -march=i686 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LANG="en_US" LDFLAGS="-Wl,-O1" LINGUAS="en_US sk" MAKEOPTS="-j2" 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/local/portage/layman/sunrise /usr/i686-mingw32/usr/portage /usr/local/portage /usr/local/portage/layman/synce" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="7zip X a52 aac acl alsa ao apache2 bash-completion berkdb bluetooth bzip2 cairo cdio cdparanoia cdr cli cracklib crypt cups dbus divx dri dts dvb dvd dvdr dvdread esd ffmpeg firefox flac gd gdbm gmedia gpm gtk hal iconv ipv6 isdnlog java jpeg mad midi mjpeg mmx mp3 mpd mpeg mudflap mysql ncurses nls nptl nptlonly nsplugin ogg openal opengl openmp pcre pda pdf perl php png pppd python quicktime readline realmedia reflection samba serial session spl sse sse2 ssl ssse3 subversion syncengine sysfs tcpd tiff truetype unicode usb vorbis win32codecs wininstallers wma wmp x86 xml xorg xpm xulrunner xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1 968 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" FOO2ZJS_DEVICES="hp1020" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en_US sk" USERLAND="GNU" VIDEO_CARDS="fbdev i810 nv nvidia vesa vga vmware" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Created attachment 179810 [details, diff] Patch to fix the missing avutil library
Created attachment 179811 [details] Ebuild with the patch for the missing avutil
Find same problem here, looks like the configure.in miss the check for the avutil library. I have done a patch for it (just change one line) I attach also the new ebuild. Note: My first patch after several years using gentoo... I hope is correct :)
(In reply to comment #5) > Find same problem here, looks like the configure.in miss the check for the > avutil library. > > I have done a patch for it (just change one line) I attach also the new ebuild. > > Note: My first patch after several years using gentoo... I hope is correct :) Looks great, and works for me. I've just committed it. Thank you for your help!