mpd fails to build if only "flac" is set in use. tested with emerge/paludis. message "flac_plugin.c:(.text+0x90d): undefined reference to `ogg_stream_type_detect'" sounds like a missing reference to ogg. If i add the vorbis use flag compiling works fine. Seems like some minor change in ebuild is needed. i686-pc-linux-gnu-gcc -O2 -mcpu=i686 -pipe -o mpd mpd-audioOutput_alsa.o mpd-audioOud-audioOutput_osx.o mpd-audioOutput_pulse.o mpd-audioOutput_mvp.o mpd-audioOutput_shflac_common.o mpd-_ogg_common.o mpd-oggflac_plugin.o mpd-oggvorbis_plugin.o mpd-aac_d-flac_plugin.o mpd-mod_plugin.o mpd-mp3_plugin.o mpd-mp4_plugin.o mpd-mpc_plugin.o buffer2array.o mpd-charConv.o mpd-command.o mpd-conf.o mpd-dbUtils.o mpd-decode.o mpd-inputStream.o mpd-inputStream_file.o mpd-inputStream_http.o mpd-interface.o mpd-li.o mpd-main.o mpd-metadataChunk.o mpd-myfprintf.o mpd-normalize.o mpd-compress.o mpd_utils.o mpd-permission.o mpd-player.o mpd-playerData.o mpd-playlist.o mpd-replayGaicheck.o mpd-sllist.o mpd-song.o mpd-state_file.o mpd-stats.o mpd-tag.o mpd-tagTrackeume.o mpd-utf8.o mpd-zeroconf.o mpd-locate.o mpd-storedPlaylist.o -lnsl /usr/lib/liib /usr/lib/libFLAC.so /usr/lib/libogg.so -lm mpd-flac_plugin.o: In function `oggflac_try_decode': flac_plugin.c:(.text+0x90d): undefined reference to `ogg_stream_type_detect' collect2: ld returned 1 exit status make[3]: *** [mpd] Fehler 1 make[3]: Leaving directory `/var/tmp/portage/media-sound/mpd-0.13.0/work/mpd-0.13.0/ make[2]: *** [all-recursive] Fehler 1 make[2]: Leaving directory `/var/tmp/portage/media-sound/mpd-0.13.0/work/mpd-0.13.0/ make[1]: *** [all-recursive] Fehler 1 make[1]: Leaving directory `/var/tmp/portage/media-sound/mpd-0.13.0/work/mpd-0.13.0' make: *** [all] Fehler 2 * * ERROR: media-sound/mpd-0.13.0 failed. * Call stack: * ebuild.sh, line 1654: Called dyn_compile * ebuild.sh, line 990: Called qa_call 'src_compile' * ebuild.sh, line 44: Called src_compile * mpd-0.13.0.ebuild, line 95: Called die * * emake failed * If you need support, post the topmost build error, and the call stack if relevant * A complete build log is located at '/var/tmp/portage/media-sound/mpd-0.13.0/temp/ * * Messages for package media-sound/mpd-0.13.0: * * ERROR: media-sound/mpd-0.13.0 failed. * Call stack: * ebuild.sh, line 1654: Called dyn_compile * ebuild.sh, line 990: Called qa_call 'src_compile' * ebuild.sh, line 44: Called src_compile * mpd-0.13.0.ebuild, line 95: Called die * * emake failed * If you need support, post the topmost build error, and the call stack if relevant * A complete build log is located at '/var/tmp/portage/media-sound/mpd-0.13.0/temp/ *
Care to post `emerge -pv mpd` so I can actually see what USEflags were used? I couldn't reproduce this with USE="flac -ogg -vorbis", for example.
Created attachment 131142 [details, diff] Add a couple of defines
Gunnar: Does the attached patch fix your problem? (add it to the ebuild using epatch, whatever)
additional emerge -pv with old ebuild as you asked in first comment, i'll try patch later if i have more time. [ebuild R ] media-sound/mpd-0.13.0 USE="alsa flac iconv ipv6 unicode vorbis -aac* -ao -audiofile -avahi -icecast* -jack -libsamplerate -mikmod -mp3* -musepack* -ogg* -oss* -pulseaudio" 0 kB
last comment was with vorbis (ogg?) enabled. needs to be disabled of course. [ebuild N ] media-sound/mpd-0.13.0 USE="alsa flac iconv ipv6 unicode -aac -ao -audiofile -avahi -icecast -jack -libsamplerate -mikmod -mp3 -musepack -ogg -oss -pulseaudio -vorbis" 0 kB to reproduce failed build you need to unmerge libvorbis (libogg?) first.
I formerly missed to compile flac with ogg (had use flags only set explicit for mpd) but also with recompiling flac with ogg support same result. flac needs to be build with ogg use flag: * To be able to play OggFlac files you need to build * media-libs/flac with +ogg, to build libOggFLAC. testing mpd with ogg-flac build leads to same result. testing with patch and deactivated vorbis flag... >>> Unpacking mpd-0.13.0.tar.bz2 to /var/tmp/portage/media-sound/mpd-0.13.0/work * Applying mpdconf.patch ... [ ok ] * Applying fix-defines.diff ... [ ok ] ... ... ... i686-pc-linux-gnu-gcc -O2 -march=i686 -pipe -o mpd mpd-audioOutput_alsa.o mpd-audioOutput_ao.o mpd-audioOutput_oss.o mpd-audioOutput_osx.o mpd-audioOutput_pulse.o mpd-audioOutput_mvp.o mpd-audioOutput_shout.o mpd-audioOutput_jack.o mpd-_flac_common.o mpd-_ogg_common.o mpd-oggflac_plugin.o mpd-oggvorbis_plugin.o mpd-aac_plugin.o mpd-audiofile_plugin.o mpd-flac_plugin.o mpd-mod_plugin.o mpd-mp3_plugin.o mpd-mp4_plugin.o mpd-mpc_plugin.o mpd-audio.o mpd-audioOutput.o mpd-buffer2array.o mpd-charConv.o mpd-command.o mpd-conf.o mpd-dbUtils.o mpd-decode.o mpd-directory.o mpd-inputPlugin.o mpd-inputStream.o mpd-inputStream_file.o mpd-inputStream_http.o mpd-interface.o mpd-list.o mpd-listen.o mpd-log.o mpd-ls.o mpd-main.o mpd-metadataChunk.o mpd-myfprintf.o mpd-normalize.o mpd-compress.o mpd-outputBuffer.o mpd-path.o mpd-pcm_utils.o mpd-permission.o mpd-player.o mpd-playerData.o mpd-playlist.o mpd-replayGain.o mpd-sig_handlers.o mpd-signal_check.o mpd-sllist.o mpd-song.o mpd-state_file.o mpd-stats.o mpd-tag.o mpd-tagTracker.o mpd-tree.o mpd-utils.o mpd-volume.o mpd-utf8.o mpd-zeroconf.o mpd-locate.o mpd-storedPlaylist.o -lnsl /usr/lib/libasound.so -ldl -lpthread /usr/lib/libmpcdec.so /usr/lib/libfaad.so -L/usr/lib /usr/lib/libFLAC.so /usr/lib/libogg.so -lm mp4ff/.libs/libmp4ff.a mpd-flac_plugin.o: In function `oggflac_try_decode': flac_plugin.c:(.text+0x90d): undefined reference to `ogg_stream_type_detect' collect2: ld returned 1 exit status make[3]: *** [mpd] Fehler 1 make[3]: Leaving directory `/var/tmp/portage/media-sound/mpd-0.13.0/work/mpd-0.13.0/src' make[2]: *** [all-recursive] Fehler 1 make[2]: Leaving directory `/var/tmp/portage/media-sound/mpd-0.13.0/work/mpd-0.13.0/src' make[1]: *** [all-recursive] Fehler 1 make[1]: Leaving directory `/var/tmp/portage/media-sound/mpd-0.13.0/work/mpd-0.13.0' make: *** [all] Fehler 2
Created attachment 139865 [details] buildlog *bump* I have the same problem. I've tried also to build without ogg support [both flac and mpd], but same error occurred. Above patch didn't help. # emerge -ptv flac mpd [ebuild R ] media-sound/mpd-0.13.0 USE="aac alsa flac* mp3 ogg -ao -audiofile -avahi -icecast -iconv -ipv6 -jack -libsamplerate -mikmod -musepack -oss -pulseaudio -unicode -vorbis" 0 kB [ebuild R ] media-libs/flac-1.2.1-r2 USE="3dnow ogg sse (-altivec) -cxx -debug -doc" 0 kB mpd-flac_plugin.o: In function `oggflac_try_decode': flac_plugin.c:(.text+0x895): undefined reference to `ogg_stream_type_detect' collect2: ld returned 1 exit status make[3]: *** [mpd] Error 1 make[3]: Leaving directory `/tmp/portage/media-sound/mpd-0.13.0/work/mpd-0.13.0/src'
Fixed in mpd-0.14.0_pre20080120