On 5/24/10, Eric J Korpela <[email protected]> wrote:
> or until then you can set your CFLAGS manually.

I added /usr/include/gtk-2.0 to my include path by setting CPPFLAGS,
and now I get this error:

/usr/include/glib-2.0/gio/giotypes.h:127: error: conflicting
declaration ‘typedef struct _GSocket GSocket’
/usr/include/wx-2.8/wx/unix/gsockunx.h:41: error: ‘class GSocket’ has
a previous declaration as ‘class GSocket’

I thought that was already fixed with r21037, but looks like it's not
the same problem...

Looks like a widespread mess:
http://google.com/search?q=giotypes+gsockunx+GSocket

wxWidgets had no business defining a class called that :/ Now they say
they can't change it because it's a semi-public header. wxWidgets made
a change[1][2] but it only fixes wxWidgets's own build, not apps that
use both wx and gtk.

In a BSD mailing list[3] someone said the only way was to apply the
same workaround on includes to gtk.h from the app. Since GSocket is a
GTK object, not a wx object, I think it's wxWidgets's definition that
should get renamed, not GTK's. Patch below.

[1] http://trac.wxwidgets.org/ticket/10883
[2] http://trac.wxwidgets.org/changeset/61009
[3] http://lists.freebsd.org/pipermail/freebsd-gnome/2009-December/023586.html
and next post

Index: clientgui/gtk/taskbarex.cpp
===================================================================
--- clientgui/gtk/taskbarex.cpp (revision: 21619)
+++ clientgui/gtk/taskbarex.cpp (working copy)
@@ -13,7 +13,9 @@
 #pragma implementation "taskbarex.h"
 #endif

+#define GSocket wx_GSocket
 #include "stdwx.h"
+#undef GSocket

 #ifndef __GTK_H__
 #include <gtk/gtk.h>


-- 
Nicolas
_______________________________________________
boinc_dev mailing list
[email protected]
http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev
To unsubscribe, visit the above URL and
(near bottom of page) enter your email address.

Reply via email to