GNOME Bugzilla – Bug 102830
compile error in deviceeventcontroller.c
Last modified: 2004-12-22 21:47:04 UTC
Attempting to compile the complete gnome 2.1.5 distibution at-spi-1.1.8 gives the following error. The configure output is included below gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -I../libspi -I../libspi -DORBIT2=1 -pthread -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/libbonobo-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/glib-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/lib/glib-2.0/include -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/orbit-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/bonobo-activation-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/linc-1.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/gtk-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/lib/gtk-2.0/include -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/atk-1.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/pango-1.0 -I/usr/X11R6/include -g -O2 -c deviceeventcontroller.c deviceeventcontroller.c:100: field `last_press_time' has incomplete type deviceeventcontroller.c:101: field `last_release_time' has incomplete type deviceeventcontroller.c:109: confused by earlier errors, bailing out configure output checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking whether make sets ${MAKE}... yes checking for working aclocal-1.4... missing checking for working autoconf... found checking for working automake-1.4... missing checking for working autoheader... found checking for working makeinfo... found checking whether to enable maintainer-specific portions of Makefiles... no checking for perl... /home/scratch/avalanche/public/root/bin/perl checking for 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 a BSD-compatible install... /usr/bin/install -c checking for strerror in -lcposix... no checking for pkg-config... /home/scratch/avalanche/public/root/gnome-2.1.5/bin/pkg-config checking for pkg-config... yes checking for GNOME Platform... GNOME 2.x checking for pkg-config... (cached) /home/scratch/avalanche/public/root/gnome-2.1.5/bin/pkg-config checking for pkg-config... yes checking what warning flags to pass to the C compiler... -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations checking what language compliance flags to pass to the C compiler... checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking for ld used by GCC... /home/scratch/avalanche/public/root/bin/ld checking if the linker (/home/scratch/avalanche/public/root/bin/ld) is GNU ld... yes checking for /home/scratch/avalanche/public/root/bin/ld option to reload object files... -r checking for BSD-compatible nm... /home/scratch/avalanche/public/root/bin/nm -B checking whether ln -s works... yes checking how to recognise dependant libraries... pass_all checking command to parse /home/scratch/avalanche/public/root/bin/nm -B 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 ranlib... ranlib checking for 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 (/home/scratch/avalanche/public/root/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... yes checking whether to build static libraries... no checking whether -lc should be explicitly linked in... no creating libtool checking for gtkdoc-mkdb... true checking gtk-doc version (0.10) >= 0.6... yes checking for X... libraries /usr/X11R6/lib, headers /usr/X11R6/include checking for gethostbyname... yes checking for connect... yes checking for remove... yes checking for shmat... yes checking for IceConnectionNumber in -lICE... yes checking for libbonobo-2.0 >= 1.107.0 atk >= 1.1.0 gtk+-2.0 > 2.0.0 gail >= 0.16... yes checking LIBSPI_CFLAGS... -DORBIT2=1 -pthread -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/libbonobo-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/glib-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/lib/glib-2.0/include -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/orbit-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/bonobo-activation-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/linc-1.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/atk-1.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/gtk-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/lib/gtk-2.0/include -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/pango-1.0 -I/usr/X11R6/include -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/gail-1.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/libgnomecanvas-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/libart-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include -I/usr/include/freetype2 checking LIBSPI_LIBS... -pthread -Wl,--export-dynamic -L/home/scratch/avalanche/public/root/gnome-2.1.5/lib -lbonobo-2 -lbonobo-activation -lORBit-2 -llinc -lgthread-2.0 -lgailutil -lgnomecanvas-2 -lart_lgpl_2 -lpangoft2-1.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -liconv checking for libbonobo-2.0 >= 1.107.0 gtk+-2.0 > 2.0.0 atk >= 1.1.0... yes checking REGISTRYD_CFLAGS... -DORBIT2=1 -pthread -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/libbonobo-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/glib-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/lib/glib-2.0/include -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/orbit-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/bonobo-activation-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/linc-1.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/gtk-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/lib/gtk-2.0/include -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/atk-1.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/pango-1.0 -I/usr/X11R6/include checking REGISTRYD_LIBS... -pthread -Wl,--export-dynamic -L/home/scratch/avalanche/public/root/gnome-2.1.5/lib -lbonobo-2 -lbonobo-activation -lORBit-2 -llinc -lgthread-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lm -lpangox-1.0 -lpango-1.0 -latk-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -liconv checking for libbonobo-2.0 >= 1.107.0 atk >= 1.1.0 gtk+-2.0 > 2.0.0 gail >= 0.16... yes checking TESTS_CFLAGS... -DORBIT2=1 -pthread -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/libbonobo-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/glib-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/lib/glib-2.0/include -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/orbit-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/bonobo-activation-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/linc-1.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/atk-1.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/gtk-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/lib/gtk-2.0/include -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/pango-1.0 -I/usr/X11R6/include -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/gail-1.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/libgnomecanvas-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/libart-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include -I/usr/include/freetype2 checking TESTS_LIBS... -pthread -Wl,--export-dynamic -L/home/scratch/avalanche/public/root/gnome-2.1.5/lib -lbonobo-2 -lbonobo-activation -lORBit-2 -llinc -lgthread-2.0 -lgailutil -lgnomecanvas-2 -lart_lgpl_2 -lpangoft2-1.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -liconv checking for libbonobo-2.0 >= 1.107.0 atk >= 1.1.0... yes checking ATK_BRIDGE_CFLAGS... -DORBIT2=1 -pthread -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/libbonobo-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/glib-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/lib/glib-2.0/include -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/orbit-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/bonobo-activation-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/linc-1.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/atk-1.0 checking ATK_BRIDGE_LIBS... -pthread -Wl,--export-dynamic -L/home/scratch/avalanche/public/root/gnome-2.1.5/lib -lbonobo-2 -lbonobo-activation -lORBit-2 -lm -llinc -lgthread-2.0 -latk-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -liconv checking for libbonobo-2.0 >= 1.107.0 atk >= 1.1.0... yes checking LIBCSPI_CFLAGS... -DORBIT2=1 -pthread -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/libbonobo-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/glib-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/lib/glib-2.0/include -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/orbit-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/bonobo-activation-2.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/linc-1.0 -I/home/scratch/avalanche/public/root/gnome-2.1.5/include/atk-1.0 checking LIBCSPI_LIBS... -pthread -Wl,--export-dynamic -L/home/scratch/avalanche/public/root/gnome-2.1.5/lib -lbonobo-2 -lbonobo-activation -lORBit-2 -lm -llinc -lgthread-2.0 -latk-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -liconv checking for XTestFakeKeyEvent in -lXtst... no checking for -lXtst in /usr/X11R6/lib... yes checking for XkbQueryExtension in -lX11... yes checking X11/XKBlib.h usability... no checking X11/XKBlib.h presence... yes configure: WARNING: X11/XKBlib.h: present but cannot be compiled configure: WARNING: X11/XKBlib.h: check for missing prerequisite headers? configure: WARNING: X11/XKBlib.h: proceeding with the preprocessor's result checking for X11/XKBlib.h... yes yes checking for XOpenDevice in -lXi... no checking for -lXi in /usr/X11R6/lib... yes checking X11/extensions/XInput.h usability... yes checking X11/extensions/XInput.h presence... yes checking for X11/extensions/XInput.h... yes checking for poptGetContext in -lpopt... yes checking for POPT_ARG_FLOAT in popt.h... yes mv: po/POTFILES: No such file or directory ./configure: po/POTFILES.tmp: No such file or directory configure: creating ./config.status config.status: creating Makefile config.status: creating libspi-1.0.pc config.status: creating cspi-1.0.pc config.status: creating docs/Makefile config.status: creating docs/reference/Makefile config.status: creating docs/reference/cspi/Makefile config.status: creating idl/Makefile config.status: creating libspi/Makefile config.status: creating registryd/Makefile config.status: creating atk-bridge/Makefile config.status: creating test/Makefile config.status: creating cspi/Makefile config.status: creating cspi/bonobo/Makefile config.status: creating config.h config.status: executing default-1 commands config.status: executing default-2 commands AT-SPI setup: Source code location: . Compiler: gcc Prefix: /home/scratch/avalanche/public/root/gnome-2.1.5 Welcome to the wonderful world of Accessibility. http://developer.gnome.org/projects/gap/
can you give a little more info on your system setup? For some reason your XKBlib.h or XKB setup looks abnormal to at-spi, and I don't know if we can handle a broken XKB very well ATM. What version of XFree86 (or other X server) are you running?
I've sent the header file to you directly by email bash$ xdpyinfo name of display: :0.0 version number: 11.0 vendor string: The XFree86 Project, Inc vendor release number: 4003
XFree86 Version 4.0.3 / X Window System (protocol Version 11, revision 0, vendor release 6400) Release Date: 16 March 2001 If the server is older than 6-12 months, or if your card is newer than the above date, look for a newer version before reporting problems. (See http://www.XFree86.Org/FAQ) Operating System: Linux 2.2.19-UP i686 [ELF]
I do not think that the warning output by configure are relevant t0 this problem. The compiler errors suggest that the struct timeval is not defined. This suggests that there is some problem with the system include files.
I don't think there is a problem with them since all of gnome 2.0.3 (and previous versions) compiles correctly. I can look ion my head files if you like. Where should timeval be defined?
On one Linux system I looked at (running Redhat 7.1) the struct timeval is defined in /usr/include/bits/time.h. Normally one would include <time.h>. Can you produce preprocessor output of the attmpt to compile deviceeventcontroller.c?
I recall having a problem like this in the past with another module; it was indeed a configuration issue and not a bug in the module. Unfortunately I can't recall the details now.
I've sent the preprocessor output
Does making the following change fix the problem for you? Index: deviceeventcontroller.c =================================================================== RCS file: /cvs/gnome/at-spi/registryd/deviceeventcontroller.c,v retrieving revision 1.59 diff -u -p -r1.59 deviceeventcontroller.c --- deviceeventcontroller.c 18 Dec 2002 15:28:41 -0000 1.59 +++ deviceeventcontroller.c 21 Jan 2003 09:35:11 -0000 @@ -32,6 +32,7 @@ #include <string.h> #include <ctype.h> #include <stdio.h> +#include <sys/time.h> #include <bonobo/bonobo-exception.h> #include <X11/Xlib.h>
Yes that fixes it
Fix applied to HEAD.