Created attachment 396138 [details] build.log Google says av_resample_* has to do with libav. The most recent libav update might be the culprit here...
Created attachment 396140 [details] output of emerge --info '=media-plugins/alsa-plugins-1.0.28::gentoo'
Created attachment 396142 [details] Output of emerge -pqv '=media-plugins/alsa-plugins-1.0.28::gentoo'
There are several other undefined references that I imagine are due to a similar problem: .libs/rate_lavcrate.o: In function `pcm_src_free': /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:70: undefined reference to `av_resample_close' .libs/rate_lavcrate.o: In function `pcm_src_init': /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:96: undefined reference to `av_resample_init' .libs/rate_lavcrate.o: In function `pcm_src_convert_s16': /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:186: undefined reference to `av_resample' /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:194: undefined reference to `av_resample_compensate' /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:194: undefined reference to `av_resample_compensate'
*** Bug 539854 has been marked as a duplicate of this bug. ***
Also here: make[2]: Entering directory '/var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28-abi_x86_64.amd64/rate-lavc' /bin/sh ../libtool --tag=CC --mode=compile x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I/var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/als a-plugins-1.0.28/rate-lavc -I.. -DNDEBUG -Wall -g -I/usr/include/alsa -DAVCODEC_HEADER="<libavcodec/avcodec.h>" -O2 -pipe -march=native -c -o rate_la vcrate.lo /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c libtool: compile: x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I/var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc -I.. -DNDEBUG -Wall -g -I/usr/include/alsa "-DAVCODEC_HEADER=<libavcodec/avcodec.h>" -O2 -pipe -march=native -c /var/tmp/portage/media-plugins/alsa-plu gins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c -fPIC -DPIC -o .libs/rate_lavcrate.o /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c: In function ‘pcm_src_free’: /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:70:3: warning: implicit declaration of function ‘ av_resample_close’ [-Wimplicit-function-declaration] av_resample_close(rate->context); ^ /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c: In function ‘pcm_src_init’: /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:96:3: warning: implicit declaration of function ‘ av_resample_init’ [-Wimplicit-function-declaration] rate->context = av_resample_init(info->out.rate, info->in.rate, ^ /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:96:17: warning: assignment makes pointer from integer without a cast [enabled by default] rate->context = av_resample_init(info->out.rate, info->in.rate, ^ /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c: In function ‘pcm_src_convert_s16’: /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:186:3: warning: implicit declaration of function ‘av_resample’ [-Wimplicit-function-declaration] ret = av_resample(rate->context, rate->out[i], ^ /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:194:2: warning: implicit declaration of function ‘av_resample_compensate’ [-Wimplicit-function-declaration] av_resample_compensate(rate->context, ^ /bin/sh ../libtool --tag=CC --mode=link x86_64-pc-linux-gnu-gcc -Wall -g -I/usr/include/alsa -DAVCODEC_HEADER="<libavcodec/avcodec.h>" -O2 -pipe -march=native -module -avoid-version -export-dynamic -no-undefined -Wl,--no-undefined -Wl,-O1 -Wl,--as-needed -o libasound_module_rate_lavcrate.la -rpath /usr/lib64/alsa-lib rate_lavcrate.lo -lasound -lavcodec -lavutil -lasound libtool: link: x86_64-pc-linux-gnu-gcc -shared -fPIC -DPIC .libs/rate_lavcrate.o -lavcodec -lavutil -lasound -g -O2 -march=native -Wl,--no-undefined -Wl,-O1 -Wl,--as-needed -Wl,-soname -Wl,libasound_module_rate_lavcrate.so -o .libs/libasound_module_rate_lavcrate.so .libs/rate_lavcrate.o: In function `pcm_src_free': /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:70: undefined reference to `av_resample_close' .libs/rate_lavcrate.o: In function `pcm_src_init': /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:96: undefined reference to `av_resample_init' .libs/rate_lavcrate.o: In function `pcm_src_convert_s16': /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:186: undefined reference to `av_resample' /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:194: undefined reference to `av_resample_compensate' /var/tmp/portage/media-plugins/alsa-plugins-1.0.28/work/alsa-plugins-1.0.28/rate-lavc/rate_lavcrate.c:194: undefined reference to `av_resample_compensate' collect2: error: ld returned 1 exit status Makefile:412: recipe for target 'libasound_module_rate_lavcrate.la' failed make[2]: *** [libasound_module_rate_lavcrate.la] Error 1 Just for record: dora ~ # emerge -pav libav alsa-plugins These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R *] media-video/libav-9999:0/10::gentoo USE="X aac alsa amr bzip2 encode faac fdk fontconfig gpl gsm hardcoded-tables jpeg2k mp3 network openssl pulseaudio rtmp schroedinger sdl speex ssl theora threads tools truetype v4l vaapi vdpau vorbis vpx webp x264 x265 xvid zlib (-altivec) -bindist -cdio -cpudetection -custom-cflags -debug -doc -frei0r -ieee1394 -jack (-neon) -opus -oss -pic -static-libs {-test} (-vis) -wavpack" ABI_X86="(64) -32 (-x32)" CPU_FLAGS_X86="avx avx2 mmx mmxext ssse3 -3dnow -3dnowext" 0 KiB [ebuild R ] media-plugins/alsa-plugins-1.0.28::gentoo USE="ffmpeg pulseaudio speex* -debug -jack -libsamplerate" ABI_X86="(64) -32 (-x32)" 0 KiB Total: 2 packages (2 reinstalls), Size of downloads: 0 KiB
I'm using libav-11.2. Presumably alsa-plugins-1.0.28 isn't compatible with that.
Yep, it's also incompatible with libav-11.2.
With USE=-ffmpeg it compiles... For me sound seems to play just fine without it (pulseaudio/alsa).
FWIW, I get this same error for media-plugins/alsa-plugins as well as media-video/mplayer.
http://www.alsa-project.org/main/index.php/Detailed_changes_v1.0.28_v1.0.29#alsa-plugins
http://git.libav.org/?p=libav.git;a=commit;h=0517c9e098092709397cc522c59fa63c83cc81be
still an issue today.
Created attachment 398818 [details, diff] alsa-plugins-1.0.28-libav10.patch I believe this may be the patch we're after - I lifted it from the Debian archive, but I believe it is/was based off of the one in this libav bug report: https://bugzilla.libav.org/show_bug.cgi?id=619 Applied on my systems and it seems to work okay so far, or at least it has cleanly compiled for me for the first time in a while.
Applying the patch has fixed this issue for me.
My apologies, I committed 1.0.29 of alsa-plugins without looking at this bug first. I presume your patch is still required? (From looking at what has been linked, there has been no upstream change)
I confirm that the version bump has not fixed this bug unfortunately
Fails to build for me for quite a while with the same problems. Pushed Luca's patch as: > 06 Apr 2015; Sergei Trofimovich <slyfox@gentoo.org> > +files/alsa-plugins-1.0.28-libav10.patch, alsa-plugins-1.0.29.ebuild: > Applied libav-10 patch from bug #539680 by Daniel Schulte and others. Fixes > build failure for me. Thanks!