[gstreamer-bugs] [Bug 597867] New: Plugins good do not build on Ubuntu Hardy (kernel 2.6.24)
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Thu Oct 8 17:58:13 PDT 2009
https://bugzilla.gnome.org/show_bug.cgi?id=597867
GStreamer | gst-plugins-good | 0.10.16
Summary: Plugins good do not build on Ubuntu Hardy (kernel
2.6.24)
Classification: Desktop
Product: GStreamer
Version: 0.10.16
OS/Version: Linux
Status: UNCONFIRMED
Severity: major
Priority: Normal
Component: gst-plugins-good
AssignedTo: gstreamer-bugs at lists.sourceforge.net
ReportedBy: pgquiles at elpauer.org
QAContact: gstreamer-bugs at lists.sourceforge.net
GNOME target: ---
GNOME version: ---
Created an attachment (id=145091)
--> (https://bugzilla.gnome.org/attachment.cgi?id=145091)
fix
If you try to build plugins good 0.10.16 on Hardy, it will fail with a cryptic
error like this:
make[4]: Entering directory `/tmp/buildd/gst-plugins-good0.10-0.10.16/sys/v4l2'
CC gstv4l2.o
CC gstv4l2colorbalance.o
CC gstv4l2object.o
gstv4l2object.c: In function 'gst_v4l2_object_fill_format_list':
gstv4l2object.c:842: warning: implicit declaration of function '_IOWR'
gstv4l2object.c:842: error: expected expression before 'struct'
gstv4l2object.c: In function 'gst_v4l2_object_probe_caps_for_format_and_size':
gstv4l2object.c:1304: error: expected expression before 'struct'
gstv4l2object.c:1331: error: expected expression before 'struct'
gstv4l2object.c: In function 'gst_v4l2_object_probe_caps_for_format':
gstv4l2object.c:1519: error: expected expression before 'struct'
gstv4l2object.c:1540: error: expected expression before 'struct'
gstv4l2object.c: In function 'gst_v4l2_object_get_nearest_size':
gstv4l2object.c:1737: error: expected expression before 'struct'
gstv4l2object.c:1744: error: expected expression before 'struct'
gstv4l2object.c:1764: error: expected expression before 'struct'
gstv4l2object.c:1771: error: expected expression before 'struct'
gstv4l2object.c: In function 'gst_v4l2_object_set_format':
gstv4l2object.c:1804: error: expected expression before 'struct'
gstv4l2object.c:1816: error: expected expression before 'struct'
gstv4l2object.c:1827: error: expected expression before 'struct'
gstv4l2object.c: In function 'gst_v4l2_object_start_streaming':
gstv4l2object.c:1882: warning: implicit declaration of function '_IOW'
gstv4l2object.c:1882: error: expected expression before 'int'
gstv4l2object.c: In function 'gst_v4l2_object_stop_streaming':
gstv4l2object.c:1895: error: expected expression before 'int'
make[4]: *** [libgstvideo4linux2_la-gstv4l2object.lo] Error 1
It's because _IOWRT is defined in ioctl.h. Doing #include <sys/ioctl.h> fixes
the issue. This does not happen with newer kernels (2.6.28 and newer do not
suffer from this, I don't know what exact version of the kernel fixed this).
The attached patch (include_ioctl.patch) fixes the issue for me, although is
not probably the optimal solution (I'm #including for all operating systems, in
all cases).
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the Gstreamer-bugs
mailing list