2. Building GNATColl¶
In the instructions detailed below, it is assumed that you have unpacked the GNATColl package in a temporary directory and that installdir is the directory in which you would like to install the selected components.
It is further assumed that you have recent functional GNAT compiler, as well as gprbuild.
2.1. Configuring the build environment¶
The first step is to configure the build environment. This is done by running the make setup command in the root directory of the GNATColl tree. This step is optional if you are satisfied with default values.
On Windows, this requires a properly setup Unix-like environment, to provide Unix-like tools.
The following variables can be used to configure the build process:
General:
- prefix
- Location of the installation, the default is the running GNAT installation root.
- INTEGRATED
- Treat prefix as compiler installation: yes or no (default). This is so that installed gnatcoll project can later be referenced as a predefined project of this compiler; this adds a normalized target subdir to prefix.
- BUILD
- Controls the build options : PROD (default) or DEBUG
- PROCESSORS
- Parallel compilation (default is 0, which uses all available cores)
- TARGET
- For cross-compilation, auto-detected for native platforms
- SOURCE_DIR
- For out-of-tree build
- ENABLE_SHARED
- Controls whether shared and static-pic library variants should be built: yes (default) or no. If you only intend to use static libraries, specify ‘no’.
Module-specific:
- GNATCOLL_MMAP
- Whether MMAP is supported: yes (default) or no; this has no effect on Windows where embedded MMAP implementation is always provided.
- GNATCOLL_MADVISE
- Whether MADVISE: yes (default) or no; this has no effect on Windows where MADVISE functionality is unavailable
- GNATCOLL_ATOMICS
- Selects atomics model: intrinsic (default) or mutex.
2.2. Building GNATColl¶
GNATCOLL Core Module can be built using a GPR project file, to build it is as simple as:
$ gprbuild gnatcoll.gpr
Though, to build all versions of the library (static, relocatable and static-pic) it is simpler to use the provided Makefile:
$ make
2.3. Installing GNATColl¶
Installing the library is done with the following command:
make install
Note that this command does not try to recompile GNATColl, so you must build it first. This command will install all library variants that were built.
Your application can now use the GNATColl code through a project file, by
adding a with
clause to gnatcoll.gpr
.
If you wish to install in a different location than was specified at configure time, you can override the “prefix” variable from the command line, for instance:
make prefix=/alternate/directory install
This does not require any recompilation.