Required tools and libraries

This table lists required PISM’s build dependencies alphabetically.

Required Library

Comment

pkg-config

any recent version

CMake

version 3.16 or newer

Make

any version

FFTW

version 3.1 or newer

GSL

version 1.15 or newer

MPI

any recent version

NetCDF [1]

version 4.4 or newer

PETSc [2]

version 3.11 or newer

UDUNITS

any recent version

Before installing these “by hand”, check sections Installing prerequisites on Debian or Ubuntu and Installing required libraries on macOS for specific how-to.

In particular, if multiple MPI implementations (e.g. MPICH and Open MPI) are installed then PETSc can under some situations “get confused” and throw MPI-related errors. Even package systems have been known to allow this confusion.

Note

We recommend un-installing all MPI libraries except one. In most cases there is no reason to have both Open MPI and MPICH, for example.

Optional libraries listed below are needed for certain PISM features, namely computing longitude, latitude coordinates of grid points and parallel I/O. These libraries are recommended, but not strictly required:

Optional Library

Comment

PROJ

version 6.0 or newer (used to compute longitude-latitude grid coordinates and cell bounds)

PnetCDF

Can be used for faster parallel I/O

YAC

version 3.4 or newer (used to interpolate inputs read from NetCDF files; this requires PROJ as well)

Python is needed for the PETSc installation process; a number of PISM’s pre- and post-processing scripts also use Python (version 3.x), while Git is usually needed to download the PISM code.

PISM’s Python bindings support Python 3.3 and later [3].

The following Python packages are needed to do all the examples in the User’s Manual (which run Python scripts):

Table 2 Python packages

Library

Comment

NumPy

used in most scripts

matplotlib

used in some scripts

netcdf4-python

used in most scripts

Footnotes


Previous Up Next