Main Branches

Downloads  Installation  Overview  Data Libraries  Packages  Documentation  Contacts  FAQ  GAP 3 

Tools needed to install GAP from source

Installing the GAP distribution with all the packages and full data libraries takes about 1.2 GB of disk space and (except for Windows or rsync installations) will require a working C development environment on your system. This should include a C compiler (preferably gcc 4.2 or higher), make, binary utilities such as a linker, and development libraries. We recommend that you also install a C++ compiler, as various GAP packages require one. The GAP build system will enable special support for such packages if the presence of a C++ compiler is detected while building GAP. You will also need the m4 macro processor; most, but not all standard development environments include this. Furthermore, if the readline library is detected on your system at compile time, it will be used for command line editing.

On Mac OS X, you need to install the Apple developer tools. These can be obtained as part of Apple's "Xcode" application, free of charge via the Mac App Store or via If you are on Mac OS X 10.7 or later, then after downloading and installing Xcode, you need to perform one extra step: launch Xcode, then open its Preferences dialog, and go to the "Downloads" pane. You will be presented with an optional list of extra components. From there, install the "Command Line tools" component. For Mac OS X 10.6 or earlier, some (possibly already outdated) version of Xcode may be contained on your Mac OS X Installer DVD.

Since Windows binaries for GAP and some packages are contained in the archive and GAP installer for Windows, you do not need to install any additional tools for Windows. However, if you want to try to build binaries for more packages, you may install Cygwin to get a UNIX environment for Windows, selecting all needed tools during Cygwin installation.

To install development tools on a Linux system, use your preferred package manager (e.g. apt-get or aptitude or Synaptic etc.). For example, on Ubuntu you may try to call 'apt-get install build-essential m4 libreadline6-dev libncurses5-dev' before calling 'configure' in the GAP root directory.

To get maximum benefit from GAP and from various packages it may be useful to install a number of other free software libraries (and their associated development tools) although they are not required for basic operation. For example,

needs the ncurses library (e.g. libncurses5-dev and libncursesw5-dev);
needs some version of awk (e.g. gawk or mawk);
may need wget;
requires the following X11 libraries: libXaw, libXmu, libXt, libXext, libX11, libSM, and libICE (e.g. libx11-dev, libxaw7-dev, libxt-dev which possibly aready install the other four libxmu-dev, libxext-dev, libsm-dev, libice-dev);
needs an MPI implementation such as OpenMPI or MPICH2 but optionally may use the MPINU library supplied with the package.
Other packages not listed here may have additional requirements listed in their documentation.

Using other compilers

The recommended C compiler for GAP is the GNU C compiler gcc, version 4.2 or higher. The clang compiler appears to compile GAP itself correctly but, just as for gcc, some versions have problems with the GMP library. If you cannot build GAP - with or without GMP - using a particular compiler, you may wish to try another compiler or different version of the same compiler.

If you do wish to use another compiler, you should run the command 'make clean' in the GAP root directory, set the environment variable CC to the name of your preferred compiler and then rerun configure and make. You may have to experiment to determine the best values for CFLAGS and/or COPTS. Please let us ( know the results of your experiments.