GNOME Bugzilla – Bug 542116
Unable to compile f-spot
Last modified: 2008-08-11 13:04:40 UTC
For some time now I am unable to compile the C part (libfspot) of F-spot. I get this error message: then mv -f ".deps/f-image-view.Tpo" ".deps/f-image-view.Plo"; else rm -f ".deps/f-image-view.Tpo"; exit 1; fi gcc -DHAVE_CONFIG_H -I. -I. -I.. -I .. -DLIBEOG_ETTORE_CHANGES=1 -DG_LOG_DOMAIN=\"libf\" -DG_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGNOME_DISABLE_DEPRECATED -DORBIT2=1 -pthread -D_REENTRANT -I/opt/gnome2.24/include/libgnome-2.0 -I/opt/gnome2.24/include/orbit-2.0 -I/opt/gnome2.24/include/gconf/2 -I/opt/gnome2.24/include/gnome-vfs-2.0 -I/opt/gnome2.24/lib/gnome-vfs-2.0/include -I/opt/gnome2.24/include -I/opt/gnome2.24/include/glib-2.0 -I/opt/gnome2.24/lib/glib-2.0/include -I/opt/gnome2.24/include/libbonobo-2.0 -I/opt/gnome2.24/include/bonobo-activation-2.0 -I/opt/gnome2.24/include/libgnomeui-2.0 -I/opt/gnome2.24/include/libart-2.0 -I/opt/gnome2.24/include/gnome-keyring-1 -I/opt/gnome2.24/include/libbonoboui-2.0 -I/opt/gnome2.24/include/libgnomecanvas-2.0 -I/opt/gnome2.24/include/gtk-2.0 -I/opt/gnome2.24/include/libxml2 -I/opt/gnome2.24/include/pango-1.0 -I/opt/gnome2.24/include/gail-1.0 -I/opt/gnome2.24/include/atk-1.0 -I/opt/gnome2.24/lib/gtk-2.0/include -I/opt/gnome2.24/include/cairo -I/opt/gnome2.24/include/pixman-1 -I:/opt/gnome2.24/lib/pkgconfig/../../share/gapi-2.0/glade-api.xml -I:/opt/gnome2.24/lib/pkgconfig/../../share/gapi-2.0/pango-api.xml -I:/opt/gnome2.24/lib/pkgconfig/../../share/gapi-2.0/atk-api.xml -I:/opt/gnome2.24/lib/pkgconfig/../../share/gapi-2.0/gdk-api.xml -I:/opt/gnome2.24/lib/pkgconfig/../../share/gapi-2.0/gtk-api.xml -I:/opt/gnome2.24/lib/pkgconfig/../../share/gapi-2.0/glib-api.xml -I:/opt/gnome2.24/lib/pkgconfig/../../share/gapi-2.0/gnome-vfs-api.xml -I/opt/gnome2.24/lib/pkgconfig/../../include/mono-1.0 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/libexif -I/usr/include/libexif -g -O2 -pipe -MT f-image-view.lo -MD -MP -MF .deps/f-image-view.Tpo -c f-image-view.c -fPIC -DPIC -o .libs/f-image-view.o In file included from f-image-view.h:27, from f-image-view.c:26: ../libeog/image-view.h:97: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘image_view_get_type’ f-image-view.c: In function ‘f_image_view_window_coords_to_image’: f-image-view.c:110: error: expected expression before ‘ImageView’ f-image-view.c:110: warning: passing argument 1 of ‘image_view_get_pixbuf’ makes pointer from integer without a cast f-image-view.c:112: error: expected expression before ‘ImageView’ f-image-view.c:114: warning: passing argument 1 of ‘image_view_get_offsets_and_size’ makes pointer from integer without a cast f-image-view.c: In function ‘image_coords_to_window’: f-image-view.c:144: error: expected expression before ‘ImageView’ f-image-view.c:144: warning: passing argument 1 of ‘image_view_get_pixbuf’ makes pointer from integer without a cast f-image-view.c:147: error: expected expression before ‘ImageView’ f-image-view.c:149: warning: passing argument 1 of ‘image_view_get_offsets_and_size’ makes pointer from integer without a cast f-image-view.c: In function ‘get_selection_box’: f-image-view.c:279: error: expected expression before ‘ImageView’ f-image-view.c:279: warning: passing argument 1 of ‘image_view_get_pixbuf’ makes pointer from integer without a cast f-image-view.c: In function ‘adjust_height_for_constraints’: f-image-view.c:330: error: expected expression before ‘ImageView’ f-image-view.c:330: warning: passing argument 1 of ‘image_view_get_pixbuf’ makes pointer from integer without a cast f-image-view.c: In function ‘adjust_width_for_constraints’: f-image-view.c:377: error: expected expression before ‘ImageView’ f-image-view.c:377: warning: passing argument 1 of ‘image_view_get_pixbuf’ makes pointer from integer without a cast f-image-view.c: In function ‘impl_motion_notify_event’: f-image-view.c:801: error: expected expression before ‘ImageView’ f-image-view.c:801: warning: passing argument 1 of ‘image_view_get_pixbuf’ makes pointer from integer without a cast f-image-view.c:803: error: expected expression before ‘ImageView’ f-image-view.c:803: warning: passing argument 1 of ‘image_view_get_zoom’ makes pointer from integer without a cast f-image-view.c: In function ‘class_init’: f-image-view.c:874: error: expected expression before ‘ImageViewClass’ f-image-view.c:874: warning: initialization makes pointer from integer without a cast make[3]: *** [f-image-view.lo] Error 1 make[3]: Leaving directory `/home/nx/code/svn/gnome/f-spot/libfspot' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/nx/code/svn/gnome/f-spot/libfspot' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/nx/code/svn/gnome/f-spot' make: *** [all] Error 2
gdk, gdkpixbuf, gtk, glib, libgnome versions ??
try this (removing the DEPRECATED flags): --- a/libfspot/Makefile.am +++ b/libfspot/Makefile.am @@ -2,8 +2,6 @@ INCLUDES = \ -I $(top_srcdir) \ -DLIBEOG_ETTORE_CHANGES=1 \ -DG_LOG_DOMAIN=\"libf\" \ - -DG_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED \ - -DGDK_DISABLE_DEPRECATED -DGNOME_DISABLE_DEPRECATED \ $(F_CFLAGS) \ $(EXIF_CFLAGS) \ $(LCMS_CFLAGS) \
And that's it. Works fine after removing those two lines. Btw glib/gtk/libgnome are all trunk as of yesterday.
Just removing -DGTK_DISABLE_DEPRECATED is enough. Marking as blocker as discussed on IRC.
First of all gtk+ trunk should force you to don't use #include <gtk/gtkXXXXX.h> #include <gtk/gtkYYYYYYY.> but you have to declare #include <gtk/gtk.h> Same for glib, maybe. ---- Second, the gcc line on comment 0 says "-I/opt/gnome2.24/lib/gtk-2.0/include" but not "-I/opt/gnome2.24/include/gtk-2.0" Same in my jhbuild sandbox ---- So I think we should update f-spot C files to use the proper headers and check for the reason of missing -I argument (maybe something in Makefile.am or configure.in)
Woops, sorry "-I/opt/gnome2.24/include/gtk-2.0" is in gcc line, just not where expected...
Found it. Maybe. It's the .h usage and the deprecation of GtkType (-->GType) http://library.gnome.org/devel/gtk/2.13/gtk-Types.html#GtkType
It's not the .h usage but the deprecation of GtkType. see http://bugzilla.gnome.org/show_bug.cgi?id=545745 for solution + patch (which i created before finding this one)
*** This bug has been marked as a duplicate of 543708 ***