Commit ec172e6a authored by Federico Mena Quintero's avatar Federico Mena Quintero

Merge branch 'alatiera/librsvg-env-setup'

parents 27f36262 b75c20fb
Pipeline #3966 passed with stages
in 17 minutes and 23 seconds
......@@ -15,11 +15,113 @@ There are generic compilation/installation instructions in the
[`INSTALL`][install] file, which comes from Autotools. The following
explains librsvg's peculiarities.
* [Installing dependencies for building](#installing-dependencies-for-building)
* [Basic compilation instructions](#basic-compilation-instructions)
* [Verbosity](#verbosity)
* [Debug or release builds](#debug-or-release-builds)
* [Cross-compilation](#cross-compilation)
* [Building with no network access](#building-with-no-network-access)
# Installing dependencies for building
To compile librsvg, you need the following packages installed. The
minimum version is listed here; you may use a newer version instead.
**Compilers:**
* a C compiler and `make` tool; we recommend GNU `make`.
* rust 1.21
* cargo
**Mandatory dependencies:**
* Cairo 1.15.4 with PNG support
* Freetype2 2.8.0
* Libcroco 0.6.1
* Gdk-pixbuf 2.20.0
* GIO 2.24.0
* GObject-Introspection 0.10.8
* Libxml2 2.9.0
* Pango 1.38.0
**Optional dependencies:**
* GTK+ 3.10.0 if you want the `rsvg-view-3` program
The following sections describe how to install these dependencies on
several systems.
### Debian based systems
As of 2018/Feb/22, librsvg cannot be built in `debian stable` and
`ubuntu 16.04`, as they have packages that are too old.
**Build dependencies on Debian Testing:**
```sh
apt-get install -y gcc make rustc cargo \
automake autoconf libtool gettext itstool \
libgdk-pixbuf2.0-dev libgirepository1.0-dev \
gtk-doc-tools git libgtk-3-dev \
libxml2-dev libcroco3-dev libcairo2-dev libpango1.0-dev
```
**Build dependencies on Ubuntu 18.04 or newer:**
As of 2018/Feb/22 you will need to install `rustc` and `cargo` with
[rustup.rs](https://rustup.rs), as the `rustc` package from Ubuntu is
too old. Please follow the instructions there to install Rust and Cargo.
```sh
apt-get install -y gcc make \
automake autoconf libtool gettext itstool \
libgdk-pixbuf2.0-dev libgirepository1.0-dev \
gtk-doc-tools git libgtk-3-dev \
libxml2-dev libcroco3-dev libcairo2-dev libpango1.0-dev
```
### Fedora based systems
```sh
dnf install -y gcc rust rust-std-static cargo make \
automake autoconf libtool gettext itstool \
gdk-pixbuf2-devel gobject-introspection-devel \
gtk-doc git redhat-rpm-config gtk3-devel \
libxml2-devel libcroco-devel cairo-devel pango-devel
```
### openSUSE based systems
```sh
zypper install -y gcc rust rust-std cargo make \
automake autoconf libtool gettext itstool git \
gtk-doc gobject-introspection-devel gtk3-devel \
libxml2-devel libcroco-devel cairo-devel \
pango-devel gdk-pixbuf-devel
```
# Basic compilation instructions
If you are compiling a tarball:
```sh
./configure
make
make install
```
See the [`INSTALL`][install] file for details on options you can pass
to the `configure` script to select where to install the compiled
library.
If you are compiling from a git checkout:
```sh
./autogen.sh
make
make install
```
# Verbosity
By default the compilation process is quiet, and it just tells you
......
......@@ -37,6 +37,7 @@ AC_SUBST([LIBRSVG_MINOR_VERSION],[rsvg_minor_version])
AC_SUBST([LIBRSVG_MICRO_VERSION],[rsvg_micro_version])
dnl ===========================================================================
dnl Please update COMPILING.md with version numbers if these change
CAIRO_REQUIRED=1.15.4
CROCO_REQUIRED=0.6.1
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment