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.
PlutoVG Download: https://github.com/sammycage/plutovg/archive/v1.3.3/plutovg-1.3.3.tar.gz
PlutoSVG Download: https://github.com/sammycage/plutosvg/archive/v0.0.8/plutosvg-0.0.8.tar.gz
CMake (for CMake files needed by CMake build systems)
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*
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.