GNOME Bugzilla – Bug 104726
Cannot compile UI.c
Last modified: 2004-12-22 21:47:04 UTC
make[4]: Entering directory `/usr/local/scratch/gimp-1.2.4-pre2/plug-ins/perl/UI' cc -c -I/usr/local/scratch/gimp-1.2.4-pre2/plug-ins/perl -I../../.. -I/usr/local/scratch/gimp-1.2.4-pre2/plug-ins/perl/../.. -I/software/@sys/usr/include/glib-1.2 -I/software/@sys/usr/lib/glib/include -I/software/@sys/usr/include/gtk-1.2 -I/software/@sys/usr/include/glib-1.2 -I/software/@sys/usr/lib/glib/include -I/software/@sys/usr/include -I/usr/local/include -I/usr/local/openssl/include -DGTK_DISABLE_COMPAT_H -I/afs/gsf.de/alpha_dux51/usr/lib/perl5/site_perl/5.8.0/alpha-dec_osf-thread-multi-ld/PDL/Core -O2 -arch ev56 -std1 -pthread -std -D_INTRINSICS -fprm d -ieee -I/usr/local/include -DLANGUAGE_C -O4 -DVERSION=\"1.211\" -DXS_VERSION=\"1.211\" "-I/software/@sys/usr/lib/perl5/5.8.0/alpha-dec_osf-thread-multi-ld/CORE" -Ddatadir="\"/software/@sys/usr/share\"" -DHAVE_PDL=1 UI.c cc: Error: /software/@sys/usr/include/gtk-1.2/gtk/gtkbutton.h, line 71: Invalid declarator. (declarator) void (* leave) (GtkButton *button); ----------^ cc: Error: /software/@sys/usr/include/gtk-1.2/gtk/gtktogglebutton.h, line 62: The member "parent_class" has an incomplete type. (incompmem) GtkButtonClass parent_class; -----------------^ cc: Error: /software/@sys/usr/include/gtk-1.2/gtk/gtkcheckbutton.h, line 57: The member "parent_class" has an incomplete type. (incompmem) GtkToggleButtonClass parent_class; -----------------------^ cc: Error: /software/@sys/usr/include/gtk-1.2/gtk/gtkoptionmenu.h, line 63: The member "parent_class" has an incomplete type. (incompmem) GtkButtonClass parent_class; -----------------^ cc: Error: /software/@sys/usr/include/gtk-1.2/gtk/gtkradiobutton.h, line 59: The member "parent_class" has an incomplete type. (incompmem) GtkCheckButtonClass parent_class; ----------------------^ cc: Error: ../../../libgimp/gimpcolorbutton.h, line 48: The member "parent_class" has an incomplete type. (incompmem) GtkButtonClass parent_class; -----------------^ cc: Error: ../../../libgimp/gimpunitmenu.h, line 62: The member "parent_class" has an incomplete type. (incompmem) GtkOptionMenuClass parent_class; ---------------------^ make[4]: *** [UI.o] Error 1 make[4]: Leaving directory `/usr/local/scratch/gimp-1.2.4-pre2/plug-ins/perl/UI'
Either your compiler is crap or your include files / paths are severely busted. The code that you are compiling looks sane.
We will need more information if you want us to help you to find the cause of the problem. Please give us exact descriptions of the compiler you use and versions of all the libraries involved.
$ cc -V Compaq C V6.5-207 (dtk) on Compaq Tru64 UNIX V5.1A (Rev. 1885) Compiler Driver V6.5-207 (dtk) (dtk) cc Driver $ But for which libraries do you ask? When I just change cc to gcc and remove some cc specifig CFLAGS, I get: $ gcc -c -I/afs/gsf.de/sources/gimp-1.2.4-pre2/plug-ins/perl -I../../.. -I/afs/gsf.de/sources/gimp-1.2.4-pre2/plug-ins/perl/../.. -I/software/@sys/usr/include/glib-1.2 -I/software/@sys/usr/lib/glib/include -I/software/@sys/usr/include/gtk-1.2 -I/software/@sys/usr/include/glib-1.2 -I/software/@sys/usr/lib/glib/include -I/software/@sys/usr/include -I/usr/local/include -I/usr/local/openssl/include -DGTK_DISABLE_COMPAT_H -I/afs/gsf.de/alpha_dux51/usr/lib/perl5/site_perl/5.8.0/alpha-dec_osf-thread-multi-ld/PDL/Core -O2 -D_INTRINSICS -I/usr/local/include -DLANGUAGE_C -O4 -DVERSION=\"1.211\" -DXS_VERSION=\"1.211\" "-I/software/@sys/usr/lib/perl5/5.8.0/alpha-dec_osf-thread-multi-ld/CORE" -Ddatadir="\"/software/@sys/usr/share\"" -DHAVE_PDL=1 -pthread UI.c UI.c: In function `XS_Gimp__UI_export_image': UI.c:58: parse error before "asm" UI.c:58: parse error before "asm" UI.c:58: parse error before "asm" UI.c:58: parse error before "asm" UI.c:60: parse error before "asm" UI.c:62: parse error before "asm" UI.c:63: parse error before "asm" UI.c:64: parse error before "asm" UI.c:64: parse error before "asm" UI.c:64: parse error before "asm" UI.c:64: parse error before "asm" UI.c:65: parse error before "asm" UI.c:65: parse error before "asm" UI.c:65: parse error before "asm" UI.c:65: parse error before "asm" UI.c:67: parse error before "asm" UI.c:67: parse error before "asm" UI.c:67: parse error before "asm" UI.c:67: parse error before "asm" UI.xs:55: parse error before "asm" UI.xs:56: parse error before "asm" UI.xs:59: parse error before "asm" UI.xs:60: parse error before "asm" UI.c:76: parse error before "asm" UI.c:77: parse error before "asm" UI.c:77: parse error before "asm" UI.c:77: parse error before "asm" UI.c:78: parse error before "asm" UI.c:79: parse error before "asm" UI.c:79: parse error before "asm" UI.c:79: parse error before "asm" UI.c:80: parse error before "asm" UI.c:80: parse error before "asm" UI.c:80: parse error before "asm" UI.c:82: parse error before "asm" UI.c:82: parse error before "asm" UI.c: In function `boot_Gimp__UI': UI.c:129: parse error before "asm" UI.c:129: parse error before "asm" UI.c:129: parse error before "asm" UI.c:129: parse error before "asm" UI.c:132: parse error before "asm" UI.c:132: parse error before "asm" UI.c:132: parse error before "asm" UI.c:132: parse error before "asm" UI.c:132: parse error before "asm" UI.c:132: parse error before "asm" UI.c:132: parse error before "asm" UI.c:132: parse error before "asm" UI.c:132: parse error before "asm" UI.c:132: parse error before "asm" UI.c:132: parse error before "asm" UI.c:132: parse error before "asm" UI.c:135: parse error before "asm" UI.c:135: parse error before "asm" UI.c:151: parse error before "asm" UI.c:151: parse error before "asm" UI.c:151: parse error before "asm" UI.c:151: parse error before "asm" $ $ glib-config --libs glib -L/software/@sys/usr/lib -lglib $ glib-config --cflags glib -I/software/@sys/usr/include/glib-1.2 -I/software/@sys/usr/lib/glib/include $ gtk-config --libs gtk -L/software/@sys/usr/lib -lgtk -lgdk -lgmodule -lglib -lintl -lXext -lXext -lX11 -ldnet_stub -lm $ gtk-config --cflags gtk -I/software/@sys/usr/include/gtk-1.2 -I/software/@sys/usr/include/glib-1.2 -I/software/@sys/usr/lib/glib/include $ Below I paste the soflinked libs: libgtk-1.2.so -> libgtk-1.2.so.9.9.1 libgtk.so -> libgtk-1.2.so.9.9.1 libglib-2.0.so -> libglib-2.0.so.200.200.0 libglib-1.2.so -> libglib-1.2.so.0.0.10 libglib.a -> libglib-1.2.a libglib.so -> libglib-1.2.so.0.0.10
Perhaps you should simply --disable-perl to get at least the rest of The GIMP compiled.
According to Marc Lehmann, this is another case of broken compilation environment (gcc doesn't support the native asm syntax and compiler switches). Will close the report as INVALID.
I'd rather close this as WONTFIX. The problem comes from the fact that the Perl module uses the compiler flags that were used for compiling perl itself and applies them to the current compiler (which is different from the one used for perl, in this case). Although this is not easy, it could be possible to use a different compiler or a different set of flags during the compilation (as long as the linker accepts this). So I think that WONTFIX is more appropriate in this case.
Changing a bunch of bugs I missed (no idea why) to the gimp-perl product