GNOME Bugzilla – Bug 327009
[esdsink] won't compile with includes in non-standard prefix
Last modified: 2006-01-15 14:16:34 UTC
Please describe the problem: Making all in esd make[3]: Entering directory `/home/ale/cvs/gnome2/gst-plugins-good-0.10/ext/esd' if /bin/sh ../../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I../.. -pthread -I/opt/gnome2/include/gstreamer-0.10 -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib/glib-2.0/include -I/opt/gnome2/include/libxml2 -I../../gst-libs -I../../gst-libs -pthread -I/opt/gnome2/include/gstreamer-0.10 -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib/glib-2.0/include -I/opt/gnome2/include/libxml2 -Wall -Werror -g -DGST_DISABLE_DEPRECATED -g -O2 -MT libgstesd_la-esdsink.lo -MD -MP -MF ".deps/libgstesd_la-esdsink.Tpo" -c -o libgstesd_la-esdsink.lo `test -f 'esdsink.c' || echo './'`esdsink.c; \ then mv -f ".deps/libgstesd_la-esdsink.Tpo" ".deps/libgstesd_la-esdsink.Plo"; else rm -f ".deps/libgstesd_la-esdsink.Tpo"; exit 1; fi gcc -DHAVE_CONFIG_H -I. -I. -I../.. -pthread -I/opt/gnome2/include/gstreamer-0.10 -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib/glib-2.0/include -I/opt/gnome2/include/libxml2 -I../../gst-libs -I../../gst-libs -pthread -I/opt/gnome2/include/gstreamer-0.10 -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib/glib-2.0/include -I/opt/gnome2/include/libxml2 -Wall -Werror -g -DGST_DISABLE_DEPRECATED -g -O2 -MT libgstesd_la-esdsink.lo -MD -MP -MF .deps/libgstesd_la-esdsink.Tpo -c esdsink.c -fPIC -DPIC -o .libs/libgstesd_la-esdsink.o esdsink.c:29:17: error: esd.h: No such file or directory esdsink.c: In function 'gst_esdsink_getcaps': esdsink.c:186: error: 'esd_server_info_t' undeclared (first use in this function) esdsink.c:186: error: (Each undeclared identifier is reported only once esdsink.c:186: error: for each function it appears in.) esdsink.c:186: error: 'server_info' undeclared (first use in this function) cc1: warnings being treated as errors esdsink.c:199: warning: implicit declaration of function 'esd_get_server_info' esdsink.c:210: warning: implicit declaration of function 'esd_free_server_info' esdsink.c: In function 'gst_esdsink_open': esdsink.c:225: warning: implicit declaration of function 'esd_open_sound' esdsink.c: In function 'gst_esdsink_close': esdsink.c:245: warning: implicit declaration of function 'esd_close' esdsink.c: In function 'gst_esdsink_prepare': esdsink.c:259: error: 'esd_format_t' undeclared (first use in this function) esdsink.c:259: error: syntax error before 'esdformat' esdsink.c:262: error: 'esdformat' undeclared (first use in this function) esdsink.c:262: error: 'ESD_BITS16' undeclared (first use in this function) esdsink.c:264: error: 'ESD_BITS8' undeclared (first use in this function) esdsink.c:268: error: 'ESD_STEREO' undeclared (first use in this function) esdsink.c:270: error: 'ESD_MONO' undeclared (first use in this function) esdsink.c:275: warning: implicit declaration of function 'esd_play_stream' esdsink.c: In function 'gst_esdsink_delay': esdsink.c:332: warning: implicit declaration of function 'esd_get_latency' make[3]: *** [libgstesd_la-esdsink.lo] Error 1 make[3]: Leaving directory `/home/ale/cvs/gnome2/gst-plugins-good-0.10/ext/esd' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/ale/cvs/gnome2/gst-plugins-good-0.10/ext' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/ale/cvs/gnome2/gst-plugins-good-0.10' make: *** [all] Error 2 Steps to reproduce: 1. 2. 3. Actual results: Expected results: Does this happen every time? Other information:
*** Bug 327006 has been marked as a duplicate of this bug. ***
*** Bug 327003 has been marked as a duplicate of this bug. ***
This seems like you don't have esd.h present on your system. Have you installed the esd development packages? On a Debian based system (Debian, Ubuntu) they should be called something like libesd0-dev. I'm not sure exactly what they would be called on a RedHat based system, but I'm guessing they would be something similar to esd-dev or esd-devel. I'm closing it as NOTABUG, since I belive it will be resolved once you install the development packages. Please use your distribution's tools (dselect, YAST, rpm) to install the esd development packages, and then reopen the bug if Gstreamer still fails to compile. If Gstreamer fails to compile, please give more info about your system configuration.
It shouldn't attempt to compile esdsink at all though if the esd header files haven't been found, so this points to an error in our configure.ac or Makefiles somewhere. Looks like we don't have $(ESD_CFLAGS) in ext/esd/Makefile.am, so that would explain things failing if esd is installed in a non-standard prefix. Fixed in CVS: 2006-01-15 Tim-Philipp Müller <tim at centricular dot net> * ext/esd/Makefile.am: Add $(ESD_CFLAGS), otherwise build will fail for folks with libesd in a non-standard prefix (#327009).