Build Dependencies

openPMD-api depends on a series of third-party projects. These are currently:

Required

  • CMake 3.15.0+

  • C++14 capable compiler, e.g. g++ 5.0+, clang 5.0+, VS 2017+

Shipped internally

The following libraries are shipped internally in share/openPMD/thirdParty/ for convenience:

Optional: I/O backends

while those can be build either with or without:

  • MPI 2.1+, e.g. OpenMPI 1.6.5+ or MPICH2

Optional: language bindings

  • Python:

    • Python 3.6 - 3.9

    • pybind11 2.6.1+

    • numpy 1.15+

    • mpi4py 2.1+

Quick Install with Spack

Quickly install all dependencies with a Spack anonymous environment. Go in the base directory and type:

spack env activate -d .
spack install