After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 740521 - gdk-pixbuf-2.31.2 API change breaks building gtk+-2.24.25
gdk-pixbuf-2.31.2 API change breaks building gtk+-2.24.25
Status: RESOLVED DUPLICATE of bug 740568
Product: gdk-pixbuf
Classification: Platform
Component: general
2.30.x
Other Linux
: Normal normal
: ---
Assigned To: gdk-pixbuf-maint
gdk-pixbuf-maint
Depends on:
Blocks:
 
 
Reported: 2014-11-22 01:49 UTC by Christopher Gregory
Modified: 2014-11-23 09:09 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Christopher Gregory 2014-11-22 01:49:17 UTC
Hello,

Since you have deprecated GdkPixdata in this latest release, gtk+-2.24.25 now fails to compile with the following error:

make  gtk-update-icon-cache
make[3]: Entering directory '/opt/build/gtk+-2/gtk+-2.24.25/gtk'
gcc -DHAVE_CONFIG_H -I. -I.. -DG_LOG_DOMAIN=\"Gtk\" -DGTK_LIBDIR=\"/usr/lib\" -DGTK_DATADIR=\"/usr/share\" -DGTK_DATA_PREFIX=\"/usr\" -DGTK_SYSCONFDIR=\"/etc\" -DGTK_VERSION=\"2.24.25\" -DGTK_BINARY_VERSION=\"2.10.0\" -DGTK_HOST=\"i686-pc-linux-gnu\" -DGTK_COMPILATION -DGTK_PRINT_BACKENDS=\"file,lpr\" -DGTK_PRINT_PREVIEW_COMMAND=\""evince --unlink-tempfile --preview --print-settings %s %f"\" -I.. -I../gtk -I.. -I../gdk -I../gdk -DGTK_DISABLE_DEPRECATED -DGTK_FILE_SYSTEM_ENABLE_UNSUPPORTED -DGTK_PRINT_BACKEND_ENABLE_UNSUPPORTED -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include  -DG_DISABLE_CAST_CHECKS -pthread -I/usr/local/include -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/local/include -I/usr/include/libpng16 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/harfbuzz      -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES -I/usr/local/include   -DGDK_PIXBUF_DISABLE_DEPRECATED -g -O2 -Wall -MT updateiconcache.o -MD -MP -MF .deps/updateiconcache.Tpo -c -o updateiconcache.o updateiconcache.c
In file included from updateiconcache.c:56:0:
gtkiconcachevalidator.c: In function ‘check_pixel_data’:
gtkiconcachevalidator.c:166:7: error: unknown type name ‘GdkPixdata’
       GdkPixdata data; 
       ^
gtkiconcachevalidator.c:168:7: warning: implicit declaration of function ‘gdk_pixdata_deserialize’ [-Wimplicit-function-declaration]
       check ("pixel data", gdk_pixdata_deserialize (&data, length,
       ^
updateiconcache.c: At top level:
updateiconcache.c:168:3: error: unknown type name ‘GdkPixdata’
   GdkPixdata pixdata;
   ^
updateiconcache.c: In function ‘maybe_cache_image_data’:
updateiconcache.c:476:7: error: unknown type name ‘GdkPixbuf’
       GdkPixbuf *pixbuf;
       ^
updateiconcache.c:515:4: warning: implicit declaration of function ‘gdk_pixbuf_new_from_file’ [-Wimplicit-function-declaration]
    pixbuf = gdk_pixbuf_new_from_file (path, NULL);
    ^
updateiconcache.c:515:11: warning: assignment makes pointer from integer without a cast
    pixbuf = gdk_pixbuf_new_from_file (path, NULL);
           ^
updateiconcache.c:519:8: warning: implicit declaration of function ‘gdk_pixdata_from_pixbuf’ [-Wimplicit-function-declaration]
        gdk_pixdata_from_pixbuf (&idata->pixdata, pixbuf, FALSE);
        ^
updateiconcache.c:520:36: error: request for member ‘length’ in something not a structure or union
        idata->size = idata->pixdata.length + 8;
                                    ^
updateiconcache.c: In function ‘write_image_data’:
updateiconcache.c:824:3: error: unknown type name ‘GdkPixdata’
   GdkPixdata *pixdata = &image_data->pixdata;
   ^
updateiconcache.c:830:3: warning: implicit declaration of function ‘gdk_pixdata_serialize’ [-Wimplicit-function-declaration]
   s = gdk_pixdata_serialize (pixdata, &len);
   ^
updateiconcache.c:830:5: warning: assignment makes pointer from integer without a cast
   s = gdk_pixdata_serialize (pixdata, &len);
     ^
updateiconcache.c: In function ‘write_bucket’:
updateiconcache.c:1116:11: warning: variable ‘tmp’ set but not used [-Wunused-but-set-variable]
       int tmp;
           ^
updateiconcache.c: In function ‘main’:
updateiconcache.c:1765:3: warning: implicit declaration of function ‘g_type_init’ [-Wimplicit-function-declaration]
   g_type_init ();
   ^
Makefile:2902: recipe for target 'updateiconcache.o' failed
make[3]: *** [updateiconcache.o] Error 1
make[3]: Leaving directory '/opt/build/gtk+-2/gtk+-2.24.25/gtk'
Makefile:5703: recipe for target 'gtkbuiltincache.h' failed
make[2]: *** [gtkbuiltincache.h] Error 2
make[2]: Leaving directory '/opt/build/gtk+-2/gtk+-2.24.25/gtk'
Makefile:719: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/opt/build/gtk+-2/gtk+-2.24.25'
Makefile:610: recipe for target 'all' failed
make: *** [all] Error 2
90.9 Elapsed Time -  gtk+-2.24.25

Could you please either revert that api change or fix the code so that it does work with gtk+-24.25

Christopher.
Comment 1 Christian Persch 2014-11-23 09:09:29 UTC

*** This bug has been marked as a duplicate of bug 740568 ***