Introduction to cairo

cairo is a 2D graphics library with support for multiple output devices. Currently supported output targets include the X Window System, win32, image buffers, PostScript, PDF and SVG. Experimental backends include OpenGL (through glitz), Quartz and XCB file output. cairo is designed to produce consistent output on all output media while taking advantage of display hardware acceleration when available (e.g., through the X Render Extension). The cairo API provides operations similar to the drawing operators of PostScript and PDF. Operations in cairo include stroking and filling cubic Bézier splines, transforming and compositing translucent images, and antialiased text rendering. All drawing operations can be transformed by any affine transformation (scale, rotation, shear, etc.).

Package Information

  • Download (HTTP):

  • Download MD5 sum: e8c442ff821c0719a69508fecba9038f

  • Download size: 3.2 MB

  • Estimated disk space required: 34 MB (additional 62 MB to run the test suite)

  • Estimated build time: 0.5 SBU (additional 2.5 SBU to run the test suite)

cairo Dependencies


X Window System and pkg-config-0.22


glitz, DirectFB, Open Quartz, libxcb-1.0 (also requires xcb-util), and GTK-Doc-1.8

Optional (to provide extended test suite coverage)

GTK+-2.10.13 (for testing the PDF backend), Poppler-0.5.4 (for testing the PDF backend), librsvg-2.16.1 (for testing the SVG backend).

Note that the GTK, Poppler and librsvg packages are circular in that using them for test suite coverage requires installing cairo first, then installing the desired package(s), then installing cairo again.

User Notes:

Installation of cairo

Install cairo by running the following commands:

./configure --prefix=/usr &&

To test the results, issue: make check. Note that as many as 16 of the tests are known to fail for unknown reasons. If you do not have a gs binary in your path, many (up to 87 of the 124) of the tests will fail. Also, to enhance test coverage, the tests should be run with an available X Window screen (e.g. from a local xterm or equivalent window).

Now, as the root user:

make install

Command Explanations

--enable-gtk-doc: Use this parameter if GTK-Doc is installed and you wish to rebuild the API documentation.


Installed Programs: None
Installed Libraries: libcairo.{so,a}
Installed Directories: /usr/include/cairo and /usr/share/gtk-doc/html/cairo

Short Descriptions


contains the 2D graphics functions required for rendering to the various output targets.

Last updated on 2008-05-09 08:00:42 -0500