Emerge of media-sound/madplay fails on undefined references; see attached build log Reproducible: Always Steps to Reproduce: 1. emerge mad Actual Results: ]1;]2;Started emerge on: Jan 25, 2004 22:23:34]1;]2; *** emerge mad]1;]2; >>> emerge (1 of 2) media-sound/madplay-0.15.0b-r1 to /]1;]2; === (1 of 2) Cleaning (media-sound/madplay-0.15.0b-r1::/usr/portage/media-sound/madplay/madplay-0.15.0b-r1.ebuild)]1;]2; === (1 of 2) Compiling/Merging (media-sound/madplay-0.15.0b-r1::/usr/portage/media-sound/madplay/madplay-0.15.0b-r1.ebuild)>>> Unpacking source... >>> Unpacking madplay-0.15.0b.tar.gz to /var/tmp/portage/madplay-0.15.0b-r1/work >>> Source unpacked. nls configure: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used. checking for a BSD-compatible install... /bin/install -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for i686-pc-linux-gnu-strip... no checking for strip... strip checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking for i686-pc-linux-gnu-gcc... gcc checking for C compiler default output... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking for style of include used by make... GNU checking dependency style of gcc... gcc3 checking for ld used by GCC... /usr/i686-pc-linux-gnu/bin/ld checking if the linker (/usr/i686-pc-linux-gnu/bin/ld) is GNU ld... yes checking for /usr/i686-pc-linux-gnu/bin/ld option to reload object files... -r checking for BSD-compatible nm... nm checking for a sed that does not truncate output... /bin/sed checking whether ln -s works... yes checking how to recognise dependent libraries... pass_all checking command to parse nm output... ok checking how to run the C preprocessor... gcc -E checking for egrep... grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking dlfcn.h usability... yes checking dlfcn.h presence... yes checking for dlfcn.h... yes checking for i686-pc-linux-gnu-ranlib... no checking for ranlib... ranlib checking for i686-pc-linux-gnu-strip... strip checking for objdir... .libs checking for gcc option to produce PIC... -fPIC checking if gcc PIC flag -fPIC works... yes checking if gcc static flag -static works... yes checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.lo... yes checking if gcc supports -fno-rtti -fno-exceptions... yes checking whether the linker (/usr/i686-pc-linux-gnu/bin/ld) supports shared libraries... yes checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking dynamic linker characteristics... GNU/Linux ld.so checking if libtool supports shared libraries... yes checking whether to build shared libraries... no checking whether to build static libraries... yes creating libtool checking for msgfmt... /usr/bin/msgfmt checking for gmsgfmt... /usr/bin/msgfmt checking for xgettext... /usr/bin/xgettext checking for msgmerge... /usr/bin/msgmerge checking for ranlib... (cached) ranlib checking for strerror in -lcposix... no checking for an ANSI C-conforming const... yes checking for inline... inline checking for off_t... yes checking for size_t... yes checking for working alloca.h... yes checking for alloca... yes checking for stdlib.h... (cached) yes checking for unistd.h... (cached) yes checking for getpagesize... yes checking for working mmap... yes checking whether we are using the GNU C Library 2.1 or newer... yes checking whether integer division by zero raises SIGFPE... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unsigned long long... yes checking for inttypes.h... yes checking whether the inttypes.h PRIxNN macros are broken... no checking for ld used by GCC... /usr/i686-pc-linux-gnu/bin/ld checking if the linker (/usr/i686-pc-linux-gnu/bin/ld) is GNU ld... yes checking for shared library run path origin... done checking argz.h usability... yes checking argz.h presence... yes checking for argz.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking locale.h usability... yes checking locale.h presence... yes checking for locale.h... yes checking nl_types.h usability... yes checking nl_types.h presence... yes checking for nl_types.h... yes checking malloc.h usability... yes checking malloc.h presence... yes checking for malloc.h... yes checking stddef.h usability... yes checking stddef.h presence... yes checking for stddef.h... yes checking for stdlib.h... (cached) yes checking for string.h... (cached) yes checking for unistd.h... (cached) yes checking sys/param.h usability... yes checking sys/param.h presence... yes checking for sys/param.h... yes checking for feof_unlocked... yes checking for fgets_unlocked... yes checking for getc_unlocked... yes checking for getcwd... yes checking for getegid... yes checking for geteuid... yes checking for getgid... yes checking for getuid... yes checking for mempcpy... yes checking for munmap... yes checking for putenv... yes checking for setenv... yes checking for setlocale... yes checking for stpcpy... yes checking for strcasecmp... yes checking for strdup... yes checking for strtoul... yes checking for tsearch... yes checking for __argz_count... yes checking for __argz_stringify... yes checking for __argz_next... yes checking for iconv... yes checking for iconv declaration... extern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); checking for nl_langinfo and CODESET... yes checking for LC_MESSAGES... yes checking for bison... bison checking version of bison... 1.35, ok checking whether NLS is requested... yes checking whether included gettext is requested... no checking for GNU gettext in libc... yes checking for ANSI C header files... (cached) yes checking assert.h usability... yes checking assert.h presence... yes checking for assert.h... yes checking termios.h usability... yes checking termios.h presence... yes checking for termios.h... yes checking stropts.h usability... yes checking stropts.h presence... yes checking for stropts.h... yes checking for sys/types.h... (cached) yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking errno.h usability... yes checking errno.h presence... yes checking for errno.h... yes checking sys/soundcard.h usability... yes checking sys/soundcard.h presence... yes checking for sys/soundcard.h... yes checking machine/soundcard.h usability... no checking machine/soundcard.h presence... no checking for machine/soundcard.h... no checking mad.h usability... yes checking mad.h presence... yes checking for mad.h... yes checking id3tag.h usability... yes checking id3tag.h presence... yes checking for id3tag.h... yes checking for an ANSI C-conforming const... (cached) yes checking for inline... (cached) inline checking whether byte ordering is bigendian... no checking for mad_decoder_run in -lmad... yes checking for id3_tag_parse in -lid3tag... yes checking for vprintf... yes checking for _doprnt... no checking for madvise... yes checking for localeconv... yes checking for strcasecmp... (cached) yes checking for strncasecmp... yes checking for library containing pow... -lm checking for library containing log10... none required checking whether to use mmap... yes checking for audio support... oss checking for esd_open_sound in -lesd... yes checking whether to enable profiling... no checking whether to enable debugging... no checking whether to enable experimental code... no configure: creating ./config.status config.status: creating Makefile config.status: creating msvc++/Makefile config.status: creating intl/Makefile config.status: creating po/Makefile.in config.status: creating m4/Makefile config.status: creating madplay.list config.status: creating config.h config.status: executing depfiles commands config.status: executing default-1 commands config.status: creating po/POTFILES config.status: creating po/Makefile make all-recursive make[1]: Entering directory `/var/tmp/portage/madplay-0.15.0b-r1/work/madplay-0.15.0b' Making all in intl make[2]: Entering directory `/var/tmp/portage/madplay-0.15.0b-r1/work/madplay-0.15.0b/intl' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/var/tmp/portage/madplay-0.15.0b-r1/work/madplay-0.15.0b/intl' Making all in po make[2]: Entering directory `/var/tmp/portage/madplay-0.15.0b-r1/work/madplay-0.15.0b/po' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/var/tmp/portage/madplay-0.15.0b-r1/work/madplay-0.15.0b/po' make[2]: Entering directory `/var/tmp/portage/madplay-0.15.0b-r1/work/madplay-0.15.0b' if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT madplay.o -MD -MP -MF ".deps/madplay.Tpo" \ -c -o madplay.o `test -f 'madplay.c' || echo './'`madplay.c; \ then mv -f ".deps/madplay.Tpo" ".deps/madplay.Po"; \ else rm -f ".deps/madplay.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT getopt.o -MD -MP -MF ".deps/getopt.Tpo" \ -c -o getopt.o `test -f 'getopt.c' || echo './'`getopt.c; \ then mv -f ".deps/getopt.Tpo" ".deps/getopt.Po"; \ else rm -f ".deps/getopt.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT getopt1.o -MD -MP -MF ".deps/getopt1.Tpo" \ -c -o getopt1.o `test -f 'getopt1.c' || echo './'`getopt1.c; \ then mv -f ".deps/getopt1.Tpo" ".deps/getopt1.Po"; \ else rm -f ".deps/getopt1.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT version.o -MD -MP -MF ".deps/version.Tpo" \ -c -o version.o `test -f 'version.c' || echo './'`version.c; \ then mv -f ".deps/version.Tpo" ".deps/version.Po"; \ else rm -f ".deps/version.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT resample.o -MD -MP -MF ".deps/resample.Tpo" \ -c -o resample.o `test -f 'resample.c' || echo './'`resample.c; \ then mv -f ".deps/resample.Tpo" ".deps/resample.Po"; \ else rm -f ".deps/resample.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT filter.o -MD -MP -MF ".deps/filter.Tpo" \ -c -o filter.o `test -f 'filter.c' || echo './'`filter.c; \ then mv -f ".deps/filter.Tpo" ".deps/filter.Po"; \ else rm -f ".deps/filter.Tpo"; exit 1; \ fi resample.c: In function `resample_init': resample.c:46: warning: implicit declaration of function `mad_f_div' if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT xing.o -MD -MP -MF ".deps/xing.Tpo" \ -c -o xing.o `test -f 'xing.c' || echo './'`xing.c; \ then mv -f ".deps/xing.Tpo" ".deps/xing.Po"; \ else rm -f ".deps/xing.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT player.o -MD -MP -MF ".deps/player.Tpo" \ -c -o player.o `test -f 'player.c' || echo './'`player.c; \ then mv -f ".deps/player.Tpo" ".deps/player.Po"; \ else rm -f ".deps/player.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT audio.o -MD -MP -MF ".deps/audio.Tpo" \ -c -o audio.o `test -f 'audio.c' || echo './'`audio.c; \ then mv -f ".deps/audio.Tpo" ".deps/audio.Po"; \ else rm -f ".deps/audio.Tpo"; exit 1; \ fi player.c: In function `show_id3': player.c:630: warning: implicit declaration of function `id3_frame_field' player.c:630: warning: assignment makes pointer from integer without a cast player.c:674: warning: passing arg 1 of `id3_field_getstring' makes pointer from integer without a cast player.c:680: warning: passing arg 1 of `id3_field_getfullstring' makes pointer from integer without a cast player.c: In function `process_id3': player.c:801: warning: assignment makes pointer from integer without a cast player.c:846: warning: implicit declaration of function `id3_field_getlatin1' player.c:846: warning: assignment makes pointer from integer without a cast player.c:847: warning: passing arg 1 of `id3_field_getbinarydata' makes pointer from integer without a cast if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT audio_aiff.o -MD -MP -MF ".deps/audio_aiff.Tpo" \ -c -o audio_aiff.o `test -f 'audio_aiff.c' || echo './'`audio_aiff.c; \ then mv -f ".deps/audio_aiff.Tpo" ".deps/audio_aiff.Po"; \ else rm -f ".deps/audio_aiff.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT audio_cdda.o -MD -MP -MF ".deps/audio_cdda.Tpo" \ -c -o audio_cdda.o `test -f 'audio_cdda.c' || echo './'`audio_cdda.c; \ then mv -f ".deps/audio_cdda.Tpo" ".deps/audio_cdda.Po"; \ else rm -f ".deps/audio_cdda.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT audio_hex.o -MD -MP -MF ".deps/audio_hex.Tpo" \ -c -o audio_hex.o `test -f 'audio_hex.c' || echo './'`audio_hex.c; \ then mv -f ".deps/audio_hex.Tpo" ".deps/audio_hex.Po"; \ else rm -f ".deps/audio_hex.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT audio_null.o -MD -MP -MF ".deps/audio_null.Tpo" \ -c -o audio_null.o `test -f 'audio_null.c' || echo './'`audio_null.c; \ then mv -f ".deps/audio_null.Tpo" ".deps/audio_null.Po"; \ else rm -f ".deps/audio_null.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT audio_raw.o -MD -MP -MF ".deps/audio_raw.Tpo" \ -c -o audio_raw.o `test -f 'audio_raw.c' || echo './'`audio_raw.c; \ then mv -f ".deps/audio_raw.Tpo" ".deps/audio_raw.Po"; \ else rm -f ".deps/audio_raw.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT audio_snd.o -MD -MP -MF ".deps/audio_snd.Tpo" \ -c -o audio_snd.o `test -f 'audio_snd.c' || echo './'`audio_snd.c; \ then mv -f ".deps/audio_snd.Tpo" ".deps/audio_snd.Po"; \ else rm -f ".deps/audio_snd.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT audio_wave.o -MD -MP -MF ".deps/audio_wave.Tpo" \ -c -o audio_wave.o `test -f 'audio_wave.c' || echo './'`audio_wave.c; \ then mv -f ".deps/audio_wave.Tpo" ".deps/audio_wave.Po"; \ else rm -f ".deps/audio_wave.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT audio_esd.o -MD -MP -MF ".deps/audio_esd.Tpo" \ -c -o audio_esd.o `test -f 'audio_esd.c' || echo './'`audio_esd.c; \ then mv -f ".deps/audio_esd.Tpo" ".deps/audio_esd.Po"; \ else rm -f ".deps/audio_esd.Tpo"; exit 1; \ fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -Iintl -DLOCALEDIR=\"/usr/share/locale\" -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -MT audio_oss.o -MD -MP -MF ".deps/audio_oss.Tpo" \ -c -o audio_oss.o `test -f 'audio_oss.c' || echo './'`audio_oss.c; \ then mv -f ".deps/audio_oss.Tpo" ".deps/audio_oss.Po"; \ else rm -f ".deps/audio_oss.Tpo"; exit 1; \ fi /bin/sh ./libtool --mode=link gcc -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -o madplay madplay.o getopt.o getopt1.o version.o resample.o filter.o xing.o player.o audio.o audio_aiff.o audio_cdda.o audio_hex.o audio_null.o audio_raw.o audio_snd.o audio_wave.o audio_esd.o audio_oss.o -lesd -lmad -lid3tag -lm mkdir .libs gcc -Wall -pipe -march=i686 -funroll-loops -fomit-frame-pointer -o madplay madplay.o getopt.o getopt1.o version.o resample.o filter.o xing.o player.o audio.o audio_aiff.o audio_cdda.o audio_hex.o audio_null.o audio_raw.o audio_snd.o audio_wave.o audio_esd.o audio_oss.o /usr/lib/libesd.so -L/usr/lib /usr/lib/libaudiofile.so /usr/lib/libasound.so -ldl -lpthread /usr/lib/libmad.so /usr/lib/libid3tag.so -lm resample.o(.text+0x24): In function `resample_init': : undefined reference to `mad_f_div' player.o(.text+0x1095): In function `show_id3': : undefined reference to `id3_frame_field' player.o(.text+0x12d9): In function `show_id3': : undefined reference to `id3_frame_field' player.o(.text+0x1304): In function `show_id3': : undefined reference to `id3_frame_field' player.o(.text+0x1693): In function `process_id3': : undefined reference to `id3_frame_field' player.o(.text+0x1772): In function `process_id3': : undefined reference to `id3_frame_field' player.o(.text+0x177a): In function `process_id3': : undefined reference to `id3_field_getlatin1' player.o(.text+0x1792): In function `process_id3': : undefined reference to `id3_frame_field' /usr/lib/libid3tag.so: undefined reference to `uncompress' /usr/lib/libid3tag.so: undefined reference to `compress2' collect2: ld returned 1 exit status make[2]: *** [madplay] Error 1 make[2]: Leaving directory `/var/tmp/portage/madplay-0.15.0b-r1/work/madplay-0.15.0b' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/madplay-0.15.0b-r1/work/madplay-0.15.0b' make: *** [all] Error 2 !!! ERROR: media-sound/madplay-0.15.0b-r1 failed. !!! Function src_compile, Line 36, Exitcode 2 !!! make failed Calculating dependencies ...done! >>> emerge (1 of 2) media-sound/madplay-0.15.0b-r1 to / >>> md5 src_uri ;-) madplay-0.15.0b.tar.gz ]1;]2; *** terminating.]1;]2;xterm Gentoo Base System version 1.4.3.10 Portage 2.0.49-r21 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r9, 2.4.22-gentoo-r2) ================================================================= System uname: 2.4.22-gentoo-r2 i686 AMD Duron(tm) Processor distcc 2.11.1 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O3 -march=i686 -funroll-loops -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O3 -march=i686 -funroll-loops -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="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X acpi alsa apm avi berkdb cdr crypt cups dga directfb dvd encode esd fbcon foomaticdb gdbm gif gnome gpm gtk gtk2 imlib java jpeg ldap libg++ libwww mad matrox mikmod mmx motif mozilla mpeg ncurses nls ofx oggvorbis opengl oss pam pdflib perl png ppds python quicktime readline ruby sdl slang spell sse ssl svga tcpd truetype usb x86 xinerama xml2 xv zlib"
*** This bug has been marked as a duplicate of 36950 ***