[cairo] Re: cairo errors under Solaris 9
Andre\\\' Blanchard
Andre.Blanchard at matrixone.com
Mon Dec 5 11:22:08 PST 2005
<Greg.Dunkel <at> mail.cuny.edu> writes:
>
>
> ----- Forwarded by Greg Dunkel/CENTRALOFFICE/CUNY on 11/28/2005 04:11 PM
> -----
>
> Greg Dunkel -
x
> 978 To: joscu <at>
domino1.cuny.edu
> <greg <at> domino1.cun
cc:
> y.edu> Subject: cairo errors under
Solaris 9
>
> 11/28/2005
04:10
>
PM
>
> I wrote last week about a problem I was having building cairo from the
> latest snapshot using autogen.sh
>
> When I put the latest version of m4, m4.1.4.4, the latest version of
> autoconf, automake and libtools, autogen.sh did run successfully under
> Solaris 9 for the latest snapshot.
>
> I also put
>
> #define PictStandardARGB32 0
> #define PictStandardRGB24 1
> #define PictStandardA8 2
> #define PictStandardA4 3
> #define PictStandardA1 4
> #define PictStandardNUM 5
>
> in cairo-xlib-surface.c to solve some of the unknown symbols problem. But
> I still got the following undefined symbol errors.
>
> Does anybody have any suggestions on how I can get around these problems
> and build cairo on Solaris 9.
>
> /greg
>
> gcc -DHAVE_CONFIG_H -I. -I. -I.. -I. -I../pixman/src
> -I/usr/local/include/libpng12 -I/usr/local/include
> -I/usr/local/include/freetype2 -Wall -Wpointer-arith -Wstrict-prototypes
> -Wmissing-prototypes -Wmissing-declarations -Wnested-externs
> -fno-strict-aliasing -g -O2 -MT cairo-xlib-surface.lo -MD -MP -MF
> .deps/cairo-xlib-surface.Tpo -c cairo-xlib-surface.c -fPIC -DPIC -o
> .libs/cairo-xlib-surface.o
>
> cairo-xlib-surface.c: In function `_cairo_xlib_surface_set_matrix':
> cairo-xlib-surface.c:834: error: `XTransform' undeclared (first use in this
> function)
> cairo-xlib-surface.c:834: error: (Each undeclared identifier is reported
> only once
> cairo-xlib-surface.c:834: error: for each function it appears in.)
> cairo-xlib-surface.c:834: error: parse error before "xtransform"
> cairo-xlib-surface.c:839: error: `xtransform' undeclared (first use in this
> function)
> cairo-xlib-surface.c:853: error: syntax error before "identity"
> cairo-xlib-surface.c:859: error: `identity' undeclared (first use in this
> function)
> cairo-xlib-surface.c: At top level:
> cairo-xlib-surface.c:865: error: parse error before '->' token
>
> cairo-xlib-surface.c: In function `_cairo_xlib_surface_set_filter':
> cairo-xlib-surface.c:889: error: `FilterFast' undeclared (first use in this
> function)
> cairo-xlib-surface.c:892: error: `FilterGood' undeclared (first use in this
> function)
> cairo-xlib-surface.c:895: error: `FilterBest' undeclared (first use in this
> function)
> cairo-xlib-surface.c:898: error: `FilterNearest' undeclared (first use in
> this function)
> cairo-xlib-surface.c:901: error: `FilterBilinear' undeclared (first use in
> this function)
>
> cairo-xlib-surface.c: In function `_create_trapezoid_mask':
> cairo-xlib-surface.c:1413: error: `XTrapezoid' undeclared (first use in
> this function)
> cairo-xlib-surface.c:1413: error: `offset_traps' undeclared (first use in
> this function)
> cairo-xlib-surface.c:1443: warning: implicit declaration of function
> `XRenderCompositeTrapezoids'
> cairo-xlib-surface.c:1443: warning: nested extern declaration of
> `XRenderCompositeTrapezoids'
> cairo-xlib-surface.c: In function
> `_cairo_xlib_surface_composite_trapezoids':
> cairo-xlib-surface.c:1500: warning: nested extern declaration of
> `XRenderFindStandardFormat'
> cairo-xlib-surface.c:1500: warning: assignment makes pointer from integer
> without a cast
> cairo-xlib-surface.c:1503: warning: assignment makes pointer from integer
> without a cast
> cairo-xlib-surface.c:1564: warning: nested extern declaration of
> `XRenderCompositeTrapezoids'
> cairo-xlib-surface.c:1570: error: `XTrapezoid' undeclared (first use in
> this function)
> cairo-xlib-surface.c:1570: error: parse error before ')' token
> cairo-xlib-surface.c: In function `_cairo_xlib_surface_create_internal':
> cairo-xlib-surface.c:1808: warning: nested extern declaration of
> `XRenderFindStandardFormat'
> cairo-xlib-surface.c:1808: warning: assignment makes pointer from integer
> without a cast
> make[2]: *** [cairo-xlib-surface.lo] Error 1
>
Hi:
As I just completed this (and it was 'painful') I wanted to pass along
some 'tips'. Your results may vary:
MY Objective: Build gtk on Solaris 9 (Mozilla Browser Use)
Issue 1). Xrender.h required the following change (addition):
Line 33
From
#include<X11/Xutil.h>
To
#include<X11/Xlib.h>
#include<X11/Xutil.h>
Given dependencies, I would advise that once this change is implemented you
rebuild all your other 'projects'
Issue 2). Remove "/usr/openwin/include" references in Makefiles that are
broken (i.e. generate errors); for me these were Makefiles that generate an
error for a undeclared XTrapezoid reference. Specifically, I would remove the
assignment on X_CFLAGS, but in general my changes would alert the Makefile
compilation to not use the openwin includes. Given that you wish to rely on
the opensource project equivalents this is most likely a good choice.
Issue 3). Note package dependencies (i.e. backends). Make sure you install
projects/packages in the proper order, otherwise certain resources (pangocairo
comes to mind) will be missing which will cause the next project (gtk in my
case) to fail.
Issue 4). Choose an uptodate gcc compiler. I installed 2.95.2 in order to
then build gcc 3.2. Then I used gcc 3.2 for this generation
Issue 5). I initialized the LIBS environment variable to the following:
/usr/local/lib/libiconv.so
i.e. all my makefiles would include this during their target generation.
JIC: If you plan to build gtk, be advised that gtkcalendar.c is broken.
Lastly, Here is my project list (after the gtk completion)
~> pkg-config --list-all
gmodule-export-2.0 GModule - Dynamic module loader for GLib
cairo cairo - Multi-platform 2D graphics library
gdk-pixbuf-xlib-2.0 GdkPixbuf Xlib - GdkPixbuf rendering for Xlib
pangocairo Pango Cairo - Cairo rendering support for Pango
gdk-x11-2.0 GDK - GIMP Drawing Kit (x11 target)
gmodule-2.0 GModule - Dynamic module loader for GLib
freetype2 FreeType 2 - A free, high-quality, and portable font
engine.
fontconfig Fontconfig - Font configuration and customization library
gdk-pixbuf-2.0 GdkPixbuf - Image loading and scaling
gtk+-x11-2.0 GTK+ - GIMP Tool Kit (x11 target)
glib-2.0 GLib - C Utility Library
gobject-2.0 GObject - GLib Type, Object, Parameter and Signal Library
gthread-2.0 GThread - Thread support for GLib
libpng libpng12 - Loads and saves PNG files
pangoft2 Pango FT2 - Freetype 2.0 font support for Pango
gtk+-2.0 GTK+ - GIMP Tool Kit (x11 target)
gmodule-no-export-2.0 GModule - Dynamic module loader for GLib
pangox Pango X - X Window System font support for Pango
libpng12 libpng12 - Loads and saves PNG files
pangoxft Pango Xft - Xft font support for Pango
xft Xft - X FreeType library
render Render - Render extension headers
pango Pango - Internationalized text handling
xrender Xrender - X Render Library
gdk-2.0 GDK - GIMP Drawing Kit (x11 target)
atk Atk - Accessibility Toolkit
Good Luck!
More information about the cairo
mailing list