This is the mail archive of the cygwin-xfree mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

gtk2/glib version mismatch?


The current version of glib2 on cygwin is 2.10.3-1.
The current version of gtk2 on cygwin is 2.6.10-1.

gtk2 (prior to 2.8.x) uses the GMemChunk interface. 2.8.x and later use the "slice" allocator.

glib-2.10.x deprecates the GMemChunk interface:

#if !defined (G_DISABLE_DEPRECATED) || defined (GTK_COMPILATION) || defined (GDK_COMPILATION)
typedef struct _GAllocator GAllocator;
typedef struct _GMemChunk GMemChunk;
...



Now, this causes no problems when building gtk2(2.6.x) *itself*, thanks to the GTK_COMPILATION switch. However, many of gtk2(2.6.x)'s public interfaces use the GMemChunk symbol:



gtk-2.0/gtk/gtkstatusbar.h --------------------------------------- ... struct _GtkStatusbarClass { GtkHBoxClass parent_class;

  GMemChunk *messages_mem_chunk;
...
---------------------------------------

This means that gtk clients may NOT compile with -DG_DISABLE_DEPRECATED. Disallowing deprecated interfaces is a good thing -- because deprecated interfaces bitrot quickly. However, on cygwin we're stuck, because our gtk2 packages are older than our glib, and use/expose interfaces that are deprecated in our newer glib.

Gerritt -- can you update the gtk* packages to 2.10.x?

--
Chuck

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://x.cygwin.com/docs/
FAQ:                   http://x.cygwin.com/docs/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]