Building and installing Aftermath
Aftermath is distributed through the Git version control system and uses the GNU build system. All you need to do to get Aftermath working on ypour system is to clone the source repository, to run the bootstrap script that invokes the GNU Autotools, to configure the source, to build and finally install it. If you already have a GNU/Linux system running and if you have some experience building software for such systems using the famous command triplet ./configure ; make ; make install, you'll install Aftermath in no time.Prerequisites
The Aftermath core libraries and graphical user interface depend on the following packages:- The glibc C library
- GTK+ for the user interface
- The Cairo graphics library for rendering
- Libglade for user interface descriptions
- The Git version control system
- A C99 compliant compiler with support for the GNU C extensions (e.g., GCC or LLVM/clang)
- GNU Autoconf
- GNU Automake
- GNU Libtool
- Pkg-config
- Texinfo
$ sudo apt-get install git gcc libtool autoconf automake pkg-config libglib2.0-dev texinfo libgtk+2.0-dev libglade2-dev python-numpy binutils gzip bzip2 xz-utils
If you want to build the documentation in the PDF format, you'll also need texlive:
$ sudo apt-get install git gcc libtool autoconf automake pkg-config libglib2.0-dev texinfo libgtk+2.0-dev libglade2-dev python-numpy binutils gzip bzip2 xz-utils texlive
Obtaining and compiling the source code
First, clone the aftermath git repository. Make sure that you clone the staging branch:
$ git clone git://git.drebesium.org/aftermath.git -b staging
The installation and configuration of Aftermath is done using the GNU Autotools. The
bootstrap script provided by the Aftermath sources invokes the Autotools in the right
order and with the appropriate parameters:
$ cd aftermath
$ ./bootstrap
This initial bootstrapping step generates the configure script,
which checks for the presence of software packages required by Aftermath and that configures the
source files. This script is invoked by executing:
$ ./bootstrap
$ ./configure
If all of the required packages are present, configure generates a make file with rules
to build and install the Aftermath. The rules for the compilation and installation are
interpreted by the make utility:
$ make
To speed up compilation on multicore systems, you may use the -j option of
make. For example, if your machine has four processors, you can instruct
make to run up to four compilation jobs simultaneously by executing make
-j4.
Installation
The installation step usually requires super user rights and must be ran directly from a super user shell, e.g., from a shell spawned by the su command, or indirectly using a program capable of elevating rights, such as sudo:
$ su
# make install
or
# make install
$ sudo make install
If you do not want to install Aftermath system-wide or if you want to install the program as a
non-privileged user, you can specify an alternate prefix during the configuration by invoking configure with the --prefix argument. The
following sequence of commands installs Aftermath into a folder named extra within your home directory:
$ ./configure --prefix=$HOME/extra
$ make
$ make install
If you install Aftermath to a non-standard location, make sure to include the directory
containing the aftermath binary to your PATH and to add the
directory containing the shared libraries to LD_LIBRARY_PATH.
$ make
$ make install
Running the unit tests
We strongly recommend that you run the unit tests provided by the Aftermath sources. The check target of the previously generated make file executes these tests automatically:
$ make check
In addition, you may also run the tests with the valgrind utility
(if available on your system) by invoking the valgrind-check
target:
$ make valgrind-check