PlutoSVG-0.0.8

Introduction to PlutoSVG

This page installs the PlutoVG and PlutoSVG packages, respectively. PlutoVG provides a 2D vector graphics library, whereas PlutoSVG utilizes PlutoVG to provide an SVG rendering library.

PlutoSVG Dependencies

Recommended

Optional

FreeType2

Installation of PlutoSVG

PlutoVG will be installed first, so unpack the PlutoVG tarball and navigate to the extracted directory. Afterwards, install PlutoVG by running the following commands:

mkdir build &&
cd    build &&

cmake -D CMAKE_INSTALL_PREFIX=/usr  \
      -D CMAKE_BUILD_TYPE=Release   \
      -D BUILD_SHARED_LIBS=ON       \
      -D PLUTOVG_BUILD_EXAMPLES=OFF \
      -W no-dev -G Ninja .. &&
ninja

Now, as the root user:

ninja install

Now build PlutoSVG:

tar -xf ../../plutosvg-0.0.8.tar.gz &&

cmake -D CMAKE_INSTALL_PREFIX=/usr   \
      -D CMAKE_BUILD_TYPE=Release    \
      -D BUILD_SHARED_LIBS=ON        \
      -D PLUTOSVG_BUILD_EXAMPLES=OFF \
      -W no-dev -G Ninja             \
      -B svg-build                   \
      plutosvg-0.0.8 &&
ninja -C svg-build

Finally, install PlutoSVG as the root user:

ninja -C svg-build install

As a post-installation step, it is necessary to fix library sonames that are supposed to be symlinks. The sonames are the actual libraries which must be moved to indicate that they are libraries, and then ldconfig must be run afterwards to reinstate them as symlinks. The ldconfig command below will emit warnings about ignored symlinks, which can be safely ignored. Do that now as the root user:

[ -L /usr/lib/libplutovg.so.1 ]  || mv -vf /usr/lib/libplutovg.so.1{,.3.3}
[ -L /usr/lib/libplutosvg.so.0 ] || mv -vf /usr/lib/libplutosvg.so.0{,.0.8}
ldconfig -vl /usr/lib/libpluto{,s}vg.so*

Note

If you reinstall or upgrade PlutoVG and PlutoSVG, the above set of commands must be run again since the installation process will overwrite the symlinks.

Contents

Installed Programs: None
Installed Libraries: libplutosvg and libplutovg
Installed Directories: /usr/{include,lib/cmake}/pluto{,s}vg

Short Descriptions

libplutosvg

provides SVG rendering functions

libplutovg

provides 2D vector manipulation and rendering functions