Building the C++ library
The following section describes building the AMICI C++ library:
Note
The AMICI C++ interface only supports simulation of models imported using the Python interface and Matlab interface. It cannot be used for model import itself.
Prerequisites:
CBLAS compatible BLAS library
a C++17 compatible compiler
a C compiler
Optional: * HDF5 libraries * boost for serialization
To use AMICI from C++, run the
./scripts/buildSuiteSparse.sh
./scripts/buildSundials.sh
./scripts/buildAmici.sh
script to build the AMICI library.
Note
On some systems, the CMake executable may be named something
other than cmake
. In this case, set the CMAKE
environment variable
to the correct name (e.g. export CMAKE=cmake3
, in case you have CMake
available as cmake3
).
The static library can then be linked from
./build/libamici.a
In CMake-based packages, amici can be linked via
find_package(Amici)
For further usage, consult the AMICI C++ interface documentation.
Supported CBLAS libraries
The C++ interfaces require a system installation of a CBLAS-compatible Basic Linear Algebra Subprograms (BLAS) library. AMICI has been tested with various implementations such as Accelerate, Intel MKL, cblas, openblas and atlas.
Optional SuperLU_MT support
To build AMICI with SuperLU_MT support, run
./scripts/buildSuperLUMT.sh
./scripts/buildSundials.sh
cd build/
cmake -DSUNDIALS_SUPERLUMT_ENABLE=ON ..
make