[cairo] Problems compiling cairo under cygwin

Adrian Johnson ajohnson at redneon.com
Tue Sep 22 06:33:54 PDT 2009

Cygwin 1.5 does not have have the wide character stdio functions. Cygwin 
  1.7 does have these functions [1]. I've tested cairo git with cygwin 
1.7 and after fixing some bugs it works fine. You will need to add 
#include <wchar.h> to cairo-win32-surface.c The other bug fixes should 
not be applicable to 1.8.8.

Cygwin 1.7 already includes a cairo 1.8.8 package but the windows 
surfaces are not compiled in.

[1] http://cygwin.com/1.7/cygwin-ug-net/ov-new1.7.html

Jakob Curdes wrote:
> ... cairo is 1.8.8, cygwin is 1.5.25. When I do a configure with
>  ./configure --prefix=/usr
> and then make, I get
> surface.Tpo -c -o cairo-win32-surface.lo cairo-win32-surface.c
> libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -I. 
> -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 
> -Wall -Wextra -Wsign-compare -Werror-implicit-function-declaration 
> -Wpointer-arith -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes 
> -Wmissing-declarations -Wnested-externs -Wpacked -Wswitch-enum 
> -Wstrict-aliasing=2 -Winit-self -Wdeclaration-after-statement 
> -Wold-style-definition -Wno-unused-parameter -Wno-long-long -Winline 
> -fno-strict-aliasing -fno-common -Wp,-D_FORTIFY_SOURCE=2 -g -O2 -MT 
> cairo-win32-surface.lo -MD -MP -MF .deps/cairo-win32-surface.Tpo
> -c cairo-win32-surface.c  -DDLL_EXPORT -DPIC -o
> .libs/cairo-win32-surface.o
> cairo-win32-surface.c: In function `_cairo_win32_print_gdi_error':
> cairo-win32-surface.c:96: warning: passing arg 5 of `FormatMessageW' 
> from incomp
> atible pointer type
> cairo-win32-surface.c:99: error: implicit declaration of function `fwprintf'
> cairo-win32-surface.c:99: warning: nested extern declaration of `fwprintf'
> Somebody already reported this error on the cygwin mailing list and also 
> to this list, see
> http://www.cygwin.com/ml/cygwin/2008-12/msg00103.html
> but I cannot find a discussion or even the original post in the cairo 
> list, so I venture to ask again what the problem might be.
> The cygwin list post suggests
> "It seems the problem is that it does not know about the fwprintf()
> function in Win32 environment [cairo-win32-surface.c]. Frankly, Ihaven't 
> known about it either ..."
> Any hints on this one?
> Regards,
> Jakob Curdes
> _______________________________________________
> cairo mailing list
> cairo at cairographics.org
> http://lists.cairographics.org/mailman/listinfo/cairo

More information about the cairo mailing list