Table Of Contents

Previous topic


Next topic

User Documentation


ctools can be obtained in form of releases or directly from the git development repository. Prefer a release if you intend using ctools for production (and publications). Clone the code from git if you need the most recent code that implements new features and corrects known bugs.


The latest ctools release is ctools-1.2.1 (30 May 2017).

Below a table of ctools releases. Please note that at this stage of the project there is a strict link between the ctools and gammalib versions. Please make sure that you have the corresponding gammalib version installed before installing ctools. The Mac OS X packages comprise both ctools and gammalib.

ctools gammalib Mac OS X package
1.2.1 1.2.0 ctools-1.2.1-macosx10.7.dmg
1.2.0 1.2.0 ctools-1.2.0-macosx10.7.dmg
1.1.0 1.1.0 ctools-1.1.0-macosx10.3.dmg
1.0.1 1.0.1 ctools-1.0.1-macosx10.3.dmg
1.0.0 1.0.0 ctools-1.0.0-macosx10.3.dmg
0.10.0 0.11.0 ctools-0.10.0-macosx10.3.dmg
0.9.0 0.10.0 ctools-0.9.1-macosx10.3.dmg
0.8.1 0.9.1 ctools-00-08-01-macosx10.3.dmg
0.8.0 0.9.0 ctools-00-08-00-macosx10.3.dmg
0.7.1 0.8.1 ctools-00-07-01-macosx10.3.dmg
0.7.0 0.8.0 ctools-00-07-00-macosx10.3.dmg
0.6.0 0.7.0 ctools-00-06-00-macosx10.3.dmg
0.5.1 0.6.2 ctools-00-05-01-macosx10.3.dmg
0.5.0 0.6.1 ctools-00-05-00-macosx10.3.dmg
0.4.0 0.5.0 ctools-00-04-00-macosx10.3.dmg
0.3.0 0.4.2 ctools-00-03-00-macosx10.3.dmg
0.2.5 0.4.11  
0.2.4 0.4.10  
0.2.3 0.4.9  
0.2.1 0.4.7  

Development release

The current ctools development release is ctools-1.3.0.dev1. This release reflects the status of the current devel branch of the ctools git repository.

Git repository

To clone the gammalib and ctools source codes, type

$ git clone
$ git clone

This will create directories named gammalib and ctools under the current working directory that will contain the gammalib and ctools source code. In case that the cloning does not work you may try adding

$ export GIT_SSL_NO_VERIFY=true


$ git config --global http.sslverify "false"

before retrieving the code. Before you will be able to compile the code you need to generate the configuration file using the script. Also make sure that you’re actually on the devel branch of the git repository. GammaLib and ctools can be compiled and configured using the following command sequence (the code will be installed into the /usr/local/gamma directory):

$ cd gammalib
$ git checkout devel
$ ./
$ ./configure
$ make
$ make check
$ sudo make install
$ export GAMMALIB=/usr/local/gamma
$ source $GAMMALIB/bin/
$ cd ../ctools
$ git checkout devel
$ ./
$ ./configure
$ make
$ make check
$ sudo make install
$ export CTOOLS=/usr/local/gamma
$ source $CTOOLS/bin/

Please read the Getting the ctools section if you need more information on how to install ctools.


You need swig on your system to build the Python wrappers when you get the code from Git. Python wrappers are not stored in the Git repository but are built using swig from interface files located in the pyext folder. However, you do not need swig when fetching a release as the Python wrappers are bundled with the release tarballs.