[cairo] Failed tests in cairo-1.8.10

Lutz Gehlen lrg_ml at gmx.net
Sun May 2 14:41:37 PDT 2010

Hello everybody,
I am not entirely sure if the following problems are a bug in cairo
or the result of me doing something wrong. However, since in the
latter case, it is not obvious to me what I did wrong or how I could
fix it, therfore I would like to report the problem.

Background: I am working with the Perl bindings of cairo
(http://search.cpan.org/~tsch/Cairo-1.061/lib/Cairo.pm). I have
installed both cairo and Cairo.pm successfully via my Linux
distribution (openSuSE 11.2). However, I wanted to test some Perl
modules with an older version of Perl which I have installed in a
different location. Since the package config file (cairo.pc) was not
installed with the distribution package, I could not recompile
Cairo.pm. Therefore I tried to recompile cairo as well in a location
different from the system libraries.

I worked through some tree of dependencies and ended up with the
following bash script:

export BASE=/path/to/my/cairo/testing/dir
export LDFLAGS="-L$BASE/lib/"
export CPPFLAGS="-I$BASE/include"
export PATH="$PATH:$BASE/bin"
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$BASE/lib/pkgconfig"

for lib in libxml2-2.7.7 freetype-2.3.12 fontconfig-2.8.0 zlib-1.2.5 libpng-1.4.1 pixman-0.18.0 cairo-1.8.10
    echo "Running tar -xzf $lib.tar.gz" > $lib.out
    echo "Running tar -xzf $lib.tar.gz" > $lib.err
    tar -xzf $lib.tar.gz >> $lib.out 2>> $lib.err
    echo "" >> $lib.out
    echo "" >> $lib.err

    cd $lib
    echo "Running ./configure --prefix $BASE" >> ../$lib.out
    echo "Running ./configure --prefix $BASE" >> ../$lib.err
    ./configure --prefix $BASE >> ../$lib.out 2>> ../$lib.err
    echo "" >> ../$lib.out
    echo "" >> ../$lib.err

    echo "Running make" >> ../$lib.out
    echo "Running make" >> ../$lib.err
    make >> ../$lib.out 2>> ../$lib.err
    echo "" >> ../$lib.out
    echo "" >> ../$lib.err

    echo "Running make test" >> ../$lib.out
    echo "Running make test" >> ../$lib.err
    make test >> ../$lib.out 2>> ../$lib.err
    echo "" >> ../$lib.out
    echo "" >> ../$lib.err

    echo "Running make install" >> ../$lib.out
    echo "Running make install" >> ../$lib.err
    make install >> ../$lib.out 2>> ../$lib.err
    cd ..
    rm -Rf $lib

Everything seems to work ok (despite some warnings) until the "make
test" of cairo. I enclose the output to STDERR at the end of this
email. Here are a few parts of the output to STDOUT that I found

cairo (version 1.8.10 [release]) will be compiled with:

The following surface backends:
  Image:         yes (always builtin)
  Xlib:          no (requires X development libraries)
  Xlib Xrender:  no (requires --enable-xlib)
  Quartz:        no (requires CoreGraphics framework)
  Quartz-image:  no (disabled, use --enable-quartz-image to enable)
  XCB:           no (disabled, use --enable-xcb to enable)
  Win32:         no (requires a Win32 platform)
  OS2:           no (disabled, use --enable-os2 to enable)
  PostScript:    yes
  PDF:           yes
  SVG:           yes
  glitz:         no (disabled, use --enable-glitz to enable)
  BeOS:          no (disabled, use --enable-beos to enable)
  DirectFB:      no (disabled, use --enable-directfb to enable)

The following font backends:
  User:          yes (always builtin)
  FreeType:      yes
  Win32:         no (requires a Win32 platform)
  Quartz:        no (requires CoreGraphics framework)

The following functions:
  PNG functions: yes

And the following internal features:
  gcov support:  no
  test surfaces: no (disabled, use --enable-test-surfaces to enable)
  ps testing:    yes
  pdf testing:   no (requires poppler-glib >= 0.9.2)
  svg testing:   no (requires librsvg-2.0 >= 2.15.0)

*** It is strictly recommended that you enable the native surface backend
*** feature for your platform.

I find the last message a bit hard to understand. What is the native
surface backend of my system? Xlib, since I working on X? But I
don't want to use (this version of) cairo for screen output at
all. Does "strictly recommended" only mean that I would have more
features if I enabled that or does it mean that I am asking for
trouble if I don't?

All 0 tests passed


12 of 198 tests did not behave as expected (1 unexpected pass)
(3 tests were not run)
Please report to http://bugs.freedesktop.org/enter_bug.cgi?product=cairo
Failed tests:
     a1-traps-sample: image
     finer-grained-fallbacks: image ps2 ps3
     leaky-dashed-rectangle: image
     meta-surface-pattern: image
     smask: image
     smask-text: image
     text-transform: ps2 ps3
     unantialiased-shapes: image
     user-font-rescale: ps2 ps3
     ft-text-vertical-layout-type1: image ps2 ps3
     ft-text-vertical-layout-type3: image ps2 ps3
Failures per surface - image: 9, ps2: 5, ps3: 5.
        image [9]: a1-traps-sample finer-grained-fallbacks leaky-dashed-rectangle meta-surface-pattern smask smask-text unantialiased-shapes ft-text-vertical-layout-type1 ft-text-vertical-layout-type3
        ps2 [5]: finer-grained-fallbacks text-transform user-font-rescale ft-text-vertical-layout-type1 ft-text-vertical-layout-type3
        ps3 [5]: finer-grained-fallbacks text-transform user-font-rescale ft-text-vertical-layout-type1 ft-text-vertical-layout-type3

As I said, I don't know if this is a problem of cairo at all, but
since cairo seems to compile fine, but then fails the tests, you
might want to have look.

I also don't know if the information I provided are
sufficient. Please let me know what else you need. I suppose that
email attachments are not allowed on the list, otherwise I would
attach the full output.

Thank you very much,


STDERR output of configure/make/make test/make install

Running tar -xzf cairo-1.8.10.tar.gz                                                                                                                                                                

Running ./configure --prefix /path/to/my/cairo/testing/dir
configure: WARNING: PDF backend will not be tested since poppler >= 0.9.2 is not available
configure: WARNING: SVG backend will not be tested since librsvg >= 2.15.0 is not available

Running make

Running make test
a1-traps-sample-image-argb32 [0]:       FAIL
a1-traps-sample-image-rgb24 [0]:        FAIL
finer-grained-fallbacks-image-argb32 [0]:       FAIL
finer-grained-fallbacks-image-rgb24 [0]:        FAIL
finer-grained-fallbacks-ps2-argb32 [0]: FAIL
finer-grained-fallbacks-ps2-rgb24 [0]:  FAIL
finer-grained-fallbacks-ps2-rgb24 [0] (similar):        FAIL
finer-grained-fallbacks-ps3-argb32 [0]: FAIL
finer-grained-fallbacks-ps3-rgb24 [0]:  FAIL
finer-grained-fallbacks-ps3-rgb24 [0] (similar):        FAIL
leaky-dashed-rectangle-image-argb32 [0]:        FAIL
leaky-dashed-rectangle-image-rgb24 [0]: FAIL
meta-surface-pattern-image-argb32 [0]:  FAIL
meta-surface-pattern-image-rgb24 [0]:   FAIL
smask-image-argb32 [0]: FAIL
smask-image-rgb24 [0]:  FAIL
smask-text-image-argb32 [0]:    FAIL
smask-text-image-rgb24 [0]:     FAIL
text-transform-ps2-argb32 [0]:  FAIL
text-transform-ps2-rgb24 [0]:   FAIL
text-transform-ps2-rgb24 [0] (similar): FAIL
text-transform-ps3-argb32 [0]:  FAIL
text-transform-ps3-rgb24 [0]:   FAIL
text-transform-ps3-rgb24 [0] (similar): FAIL
unantialiased-shapes-image-argb32 [0]:  FAIL
unantialiased-shapes-image-rgb24 [0]:   FAIL
user-font-rescale-ps2-argb32 [0]:       FAIL
user-font-rescale-ps2-rgb24 [0]:        FAIL
user-font-rescale-ps2-rgb24 [0] (similar):      FAIL
user-font-rescale-ps3-argb32 [0]:       FAIL
user-font-rescale-ps3-rgb24 [0]:        FAIL
user-font-rescale-ps3-rgb24 [0] (similar):      FAIL
ft-text-vertical-layout-type1-image-argb32 [0]: FAIL
ft-text-vertical-layout-type1-image-rgb24 [0]:  FAIL
ft-text-vertical-layout-type1-ps2-argb32 [0]:   FAIL
ft-text-vertical-layout-type1-ps2-rgb24 [0]:    FAIL
ft-text-vertical-layout-type1-ps2-rgb24 [0] (similar):  FAIL
ft-text-vertical-layout-type1-ps3-argb32 [0]:   FAIL
ft-text-vertical-layout-type1-ps3-rgb24 [0]:    FAIL
ft-text-vertical-layout-type1-ps3-rgb24 [0] (similar):  FAIL
ft-text-vertical-layout-type3-image-argb32 [0]: FAIL
ft-text-vertical-layout-type3-image-rgb24 [0]:  FAIL
ft-text-vertical-layout-type3-ps2-argb32 [0]:   FAIL
ft-text-vertical-layout-type3-ps2-rgb24 [0]:    FAIL
ft-text-vertical-layout-type3-ps2-rgb24 [0] (similar):  FAIL
ft-text-vertical-layout-type3-ps3-argb32 [0]:   FAIL
ft-text-vertical-layout-type3-ps3-rgb24 [0]:    FAIL
ft-text-vertical-layout-type3-ps3-rgb24 [0] (similar):  FAIL
make[5]: *** [check-TESTS] Error 1
make[4]: *** [check-am] Error 2
make[3]: *** [check-recursive] Error 1
make[2]: *** [check] Error 2

Running make install
which: no gtkdoc-rebase in (/usr/lib/mpi/gcc/openmpi/bin:/home/mullet/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/X11R6/bin:/usr/games:/opt/kde3/bin:/usr/lib/jvm/jre/bin:/usr/lib/mit/bin:/usr/lib/mit/sbin:/path/to/my/cairo/testing/dir/bin)
make[6]: [install-data-local] Error 1 (ignored)

More information about the cairo mailing list