[cairo] cairomm 1.6.0 fails with cairo 1.6.4 + quartz on Mac OS X
Benjamin Reed
rangerrick at gmail.com
Fri Apr 25 08:24:16 PDT 2008
On Fri, Apr 25, 2008 at 11:13 AM, Vladimir Vukicevic <vladimir at pobox.com> wrote:
> Yep, X tends to #define lots of very generic things (like "Status" or
> "Picture") which causes breakage if they're used in pretty much any context
> (e.g. C++ member function name, enum value, parameter name, etc.). In
> general, a file that includes X libs shouldn't include anything from any
> other platform, or pain will result. You can try #undef'ing all the bits
> that it's complaining about..
Yeah, I've tried #undef'ing everything I could, but it still freaks
out. The "Cursor" one is a typedef/struct conflict.
/usr/X11R6/include/X11/X.h:typedef XID Cursor;
/System/Library/Frameworks/ApplicationServices.framework/Frameworks/QD.framework/Headers/QuickdrawTypes.h:struct
Cursor {
:(
> Yeah, but in cairo no file ever includes both X and quartz includes. (Or X
> and win32 includes, where a similar collision appears.)
I don't know this is solveable without somehow splitting up the logic
into platform-specific bits in the cairomm code and then linking it
all together, from what I can tell.
--
Benjamin Reed a.k.a. Ranger Rick
Fink, KDE, and Mac OS X development
http://www.racoonfink.com/
More information about the cairo
mailing list