GNOME Bugzilla – Bug 115005
[PATCH] Fails to compile on OpenBSD
Last modified: 2004-12-22 21:47:04 UTC
Hi, I tried to give gstreamer a spin on OpenBSD but it fails to compile, any ideas? depmode=gcc /bin/sh ../depcomp \ /bin/sh ../libtool --mode=compile cc -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/ include -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS= 64 -I/usr/local/include/libxml2 -I/usr/local/include -pthread -I/usr/local/include/glib- 2.0 -I/usr/local/lib/glib-2.0/include -I.. -DGST_DISABLE_DEPRECATED -g -I../libs - I../include -DG_LOG_DOMAIN=g_log_domain_gstreamer -DGST_CACHE_DIR=\""/ usr/local/var/cache/gstreamer-0.6"\" -O2 -pipe -c -o libgstreamer_0.6_la-gstinfo.lo `test -f 'gstinfo.c' || echo './'`gstinfo.c rm -f .libs/libgstreamer_0.6_la-gstinfo.lo cc -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/include -D_GNU_SOURCE - D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/local/include/libxml2 - I/usr/local/include -pthread -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/ include -I.. -DGST_DISABLE_DEPRECATED -g -I../libs -I../include - DG_LOG_DOMAIN=g_log_domain_gstreamer -DGST_CACHE_DIR=\"/usr/local/ var/cache/gstreamer-0.6\" -O2 -pipe -c gstinfo.c -Wp,-MD,.deps/ libgstreamer_0.6_la-gstinfo.TPlo -fPIC -DPIC -o .libs/libgstreamer_0.6_la-gstinfo.lo gstinfo.c: In function `_gst_debug_nameof_funcptr': gstinfo.c:501: syntax error before `dlinfo' gstinfo.c:504: `dlinfo' undeclared (first use in this function) gstinfo.c:504: (Each undeclared identifier is reported only once gstinfo.c:504: for each function it appears in.) gmake[4]: *** [libgstreamer_0.6_la-gstinfo.lo] Error 1 gmake[4]: Leaving directory `/usr/ports/mystuff/gstreamer/w-gstreamer-0.6.1/ gstreamer-0.6.1/gst' gmake[3]: *** [all-recursive] Error 1 gmake[3]: Leaving directory `/usr/ports/mystuff/gstreamer/w-gstreamer-0.6.1/ gstreamer-0.6.1/gst' gmake[2]: *** [all] Error 2 gmake[2]: Leaving directory `/usr/ports/mystuff/gstreamer/w-gstreamer-0.6.1/ gstreamer-0.6.1/gst' gmake[1]: *** [all-recursive] Error 1 gmake[1]: Leaving directory `/usr/ports/mystuff/gstreamer/w-gstreamer-0.6.1/ gstreamer-0.6.1' gmake: *** [all] Error 2 *** Error code 2
It looks like OpenBSD dosn't have dladdr() Should this be checked for in configure?
Probably. There's an ugly #ifdef __sgi__ check in gstinfo.c (line 29), it'd be much nicer if this was a readl check for that struct and that function (DL_info/dladdr()).
This is fixed in HEAD. Do we want to backport? It's pretty trivial. I'd be willing to do backports if we can convince the bug submitter to continue feeding us build failures until it works. Hopefully we'll be faster the next time.
I'd more than happy to try a build of the backported fix.
http://cvs.sf.net/cgi-bin/viewcvs.cgi/gstreamer/gstreamer/configure.ac.diff?r1=1.221&r2=1.222 and http://cvs.sf.net/cgi-bin/viewcvs.cgi/gstreamer/gstreamer/gst/gstinfo.c.diff?r1=1.60&r2=1.61 should do the trick. Could you apply them to 0.6.x (CVS branch BRANCH-GSTREAMER-0_6) and see if it works? Any other compile error reports would be welcome, too.
Created attachment 20264 [details] [review] actual patch
Applied to 0.6.