## Installing from the sources

Starting from version 6.0, Libgda uses Meson build system. The following commands should work for most platforms:

    $ git clone https://gitlab.gnome.org/GNOME/libgda.git
    $ cd libgda
    $ meson build
    $ ninja -C build
    $ ninja -C build install

This will compile all the source tree, and install the binaries and documentation in your system. This method should work on all platforms where meson and ninja as well as all dependencies are available.

You can specify several arguments to meson. Some arguments are related to the meson system itself, while others are project specific. To get a full list of all meson specific options a one can type:

    $ meson help setup

All project specific options can be found in `meson_options.txt` file. In meson all parameters should be provided in the forms: -Dparameter=value

Table 1.

Option | Type | Default value | Description
--- | --- | --- | ---
with-help | boolean | true | Enable building help (GdaBrowser))
with-goocanvas | boolean | false | Enable GooCanvas
with-graphviz | boolean | false | Enable using Graphviz
with-json | boolean | true | Enable support for JSON
enable-gda-gi | boolean | false | Enable GObject Introspection for libgda
disable-sqlcipher | boolean | false | Disable SQLCipher database provider
with-libsoup | boolean | true | Enable libsoup support
with-libsecret | boolean | false | Enable libsecret support
with-gnome-keyring | boolean | false | Enable gnome-keyring support
enable-debug | boolean | false | Enable debug mode
with-examples | boolean | false | Compile examples
enable-tools | boolean | false | Enable build experimental GUI Tools
glade-catalog-dir | string | '' | Use the given directory to install glade catalog files. If glade is not available this option is ignored. If it is not given the valaue from pkg-config will be used
glade-pixmap-dir | string | '' | Use the given directory to install glade pixmap files. If glade is not available this option is ignored. If it is not given the valaue from pkg-config will be used
gtk_doc | boolean | false | Enable documentation generation
experimental | boolean | false | Enable experimental features
enable-ldap | boolean | false | Enable experimental LDAP provider
enable-web | boolean | false | Enable experimental WEB provider
enable-test-flatpak | boolean | false | Enable Terminal Test Application

The custom prefix for the installation can be provided during the configuration step:

    $ meson --prefix=/opt/GNOME/progs -Dgtk_doc=true

Please review all available options by running:

    $meson help setup

Libraries needed by providers are searched by default, so, if found, providers are compiled by default. Those libraries are searched in hard-coded directories, so if the installation of these libraries is in an uncommon place, the above arguments should be used to specify the directories where the libraries and header files are installed. Note that the SQLite provider is now always built using the sources of the SQLite library that are bundled within Libgda's sources.

If you find any problem during the configuration, compilation or installation process, do not hesitate in contacting the Gnome-Db mailing list (`<gnome-db-list@gnome.org>`, first send an email to `<gnome-db-list-request@gnome.org>` with the subject SUBSCRIBE, if you are not already subscribed).