Building/Installing from sources
================================

To build GPS from sources, you need to have GNU make available as a
prerequisite.

You need to use a recent version of the GNAT compiler (e.g. GNAT 7.4.2
or GNAT GPL 2016).

You then need to install the Gtk+ 3.x suite (e.g 3.14).
To download and build Gtk+, follow the instructions given at www.gtk.org.
On most linux systems, gtk+ is installed by default and you do not need to
reinstall it yourself.

Once Gtk+ has been installed, you need to install the latest GtkAda
See GtkAda/INSTALL for instructions.

Then make sure that your PATH and LD_LIBRARY_PATH environment variables point
to the GtkAda installation. The gtkada.gpr project file needs to be visible
either through the predefined search path (which is the case if you installed
GtkAda in the same directory as GNAT), or you need to modify the
GPR_PROJECT_PATH environment variable to point to it.

Then you need to install the latest version of XML/Ada, and set the
GPR_PROJECT_PATH environment variable to point to <xml-install>/lib/gnat,
unless XML/Ada is installed in the same directory as GNAT.

You will also need an install of Python which includes PyGObject and
Pycairo.

GPS needs to access a few of the GNAT sources to automatically find the list
of supported switches for the compiler. This can be done by creating a
link named 'gnat' to the directory that contains the GNAT sources. This
is optional. If you don't do this, GPS will not know about the GNAT
command line switches.

Then execute the following commands:

  $ ./configure --prefix=<prefix>
  $ make
  $ make install

Note: if you want to use a C compiler other than the one provided with
gnat, you can replace the configure line above by:
CC=/path/to/c/compiler ./configure --prefix=<prefix>

By default, if your machine supports shared libraries, GPS will build both
the static and dynamic versions of gnatcoll. To speed up the compilation,
you can pass --disable-shared to configure.

If you need to modify configure.in and then regenerate the configure script,
you will need autoconf version 2.57 installed on your machine. Later versions
may not be compatible.
