Requirements
FFpopSim is developed to work on 32 or 64 bit machines running Linux or Mac OSX. The basic library is written in C++ and can be used and extended independently of the Python bindings.
The Python bindings are also distributed as ready-to-use binary files (see Install); you can still build the library yourself though, if you prefer to do so.
On Linux, FFPopSim is expected to be compatible with all distributions, provided they are up to date.
On Mac OSX, only Intel CPUs are expected to work, and only Mac OSX 10.6 or later. If you have an earlier Mac computer, you can still try to build the library yourself (see Install), but that might fail.
Runtime Requirements
Python 3
NumPy: if your Python distribution has only NumPy 1.5 or earlier, consider using the EPD Python distribution, building FFPopSim from source, or updating your system. It is recommended to import numpy explicitely before using the library, as shown in the examples.
matplotlib is used in the plot functions. As long as you do not call those functions, you can live without it. However, it is recommended to import it explicitely before using the library, as shown in the examples.
Building Requirements
In order to build the Python bindings to FFPopSim, you need the following programs:
In addition, if you modify the sources and want to regenerate the Python bindings, you will need the following programs:
SWIG, the Simplified Wrapper and Interface Generator
Finally, if you want to rebuild the documentation, you will need the following programs:
Sphinx, the Python documentation generator, for Python
The building process has been tested on Debian 10, Python 3.9, Numpy 1.23, gcc 10, gsl 2.6, boost 1.74. The regeneration part has been tested on SWIG 4.1.0. The documentation has been created with Sphinx 3.4.