This page installs both the PlutoVG and PlutoSVG packages. PlutoVG provides a 2D vector graphics library, whereas PlutoSVG utilizes PlutoVG to provide an SVG rendering library. PlutoVG will be installed first, then PlutoSVG.
PlutoVG Download: https://github.com/sammycage/plutovg/archive/v1.3.2/plutovg-1.3.2.tar.gz
PlutoSVG Download: https://github.com/sammycage/plutosvg/archive/v0.0.7/plutosvg-0.0.7.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 \
-W no-dev -G Ninja .. &&
ninja
Now, as the root user:
ninja install
Now build PlutoSVG:
tar -xf ../../plutosvg-0.0.7.tar.gz &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_SHARED_LIBS=ON \
-W no-dev -G Ninja \
-B svg-build \
plutosvg-0.0.7 &&
ninja -C svg-build
Finally, install PlutoSVG as the root user:
ninja -C svg-build install
As a post-installation step, you need 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, then ldconfig must be ran afterwards
to reinstate them as symlinks. Do that now as the root user:
rm -vf /usr/lib/libplutovg.so.1.3.2 &&
rm -vf /usr/lib/libplutosvg.so.0.0.7 &&
mv -vf /usr/lib/libplutovg.so.1{,.3.2} &&
mv -vf /usr/lib/libplutosvg.so.0{,.0.7} &&
ldconfig
If you reinstall or upgrade PlutoVG and PlutoSVG, the above set of commands must be ran since the installation will overwrite the symlinks.
If you run the above set of commands more than once without another reinstallation or upgrade between, then the actual libraries will be deleted and symlinks will be put in their place. You will then have to reinstall PlutoVG and PlutoSVG, then run the commands again.