#16213: cairo-1.6.4 on PowerPC: error: 'kCGBitmapByteOrder32Host' undeclared --------------------------------+------------------------------------------- Reporter: xidobix@gmail.com | Owner: ryandesign@macports.org Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: | Keywords: --------------------------------+------------------------------------------- Comment (by ryandesign@macports.org): `kCGBitmapByteOrder32Host` should never be undefined in Mac OS X 10.4.x and up, but clearly for a small population of users, it is. We need to figure out why. Can you please try this command on your system: {{{ find /System -name '*.h' -type f -print0 2>/dev/null | xargs -0 grep -C 2 kCGBitmapByteOrder32Host }}} On my system I get: {{{ /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Headers/CGImage.h-#ifdef __BIG_ENDIAN__ /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Headers/CGImage.h-#define kCGBitmapByteOrder16Host kCGBitmapByteOrder16Big /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Headers/CGImage.h:#define kCGBitmapByteOrder32Host kCGBitmapByteOrder32Big /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Headers/CGImage.h-#else /* Little endian. */ /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Headers/CGImage.h-#define kCGBitmapByteOrder16Host kCGBitmapByteOrder16Little /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Headers/CGImage.h:#define kCGBitmapByteOrder32Host kCGBitmapByteOrder32Little /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Headers/CGImage.h-#endif /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Headers/CGImage.h- }}} This shows that `kCGBitmapByteOrder32Host` is defined in `CGImage.h` depending on the endianness of the processor. It should never be undefined. The cairo source (specifically `cairo-quartz-surface.c`) defines `kCGBitmapByteOrder32Host` if it's undefined, but there's a comment stating that this is only necessary with Mac OS X 10.3.x. Mac OS X 10.4.x and up should always have this defined. Do you get the same output as above? I'm guessing not. Please post what you get (remembering to enclose lines of literal output in !{{{ and }}} as per WikiFormatting). If you get no output, please attach your `CGImage.h` (at the path shown above). If you don't have that file, please check to see what the last path component is that you do have. For example, if there is no `CGImage.h` file, is there a `Headers` directory? If not, is there an `A` directory? and so on. For the last directory component that you do have, please show us its listing so I can compare with my system to see if you're missing anything else. -- Ticket URL: <http://trac.macports.org/ticket/16213#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS