Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
S src
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 58
    • Issues 58
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
    • Iterations
  • Merge requests 6
    • Merge requests 6
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI/CD
    • Code Review
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • OPAL
  • src
  • Wiki
    • For developers
  • Supported OS and required Software to build OPAL

Last edited by gsell Sep 17, 2021
Page history

Supported OS and required Software to build OPAL

Operating systems

The following operating systems are supported:

  • Linux

    • Redhat Enterprise Linux

    • Suse Leap

    • Ubuntu

    • …​

  • macOS

  • Windows (with the Windows Subsystem for Linux (WSL))

Required software

Linux

the usual standard and development tools like gcc, autotools, cmake, make, lex/flex, yacc/bison, tar, bzip2 …​

macOS

Xcode, command line tools, for some features Macports or Homebrew

Windows

use Windows Subsystem for Linux (WSL)

Before compiling everything yourself, you might want to try the versions available on your system. Check the requirements below before trying.

Build scripts for all required software are available here.

The list below shows the required software and versions we use to compile OPAL.

Name recommended Versions Notes

cmake

3.20.5 or newer

C/C++ Compiler

gcc 10 or Clang 12

must support C++ 17 or better. Minimum version for GCC is 8.4.0. If this or a newer version is available on your system, use it. If you want/have to compile GCC yourself, see the instructions below.

Fortran Compiler

gfortran 10

optional, must support Fortan 95 or better.

MPI

Open MPI 4.0.5
MPICH 3

If MPI is installed on your system or available as environment module, use it. In most cases this works better than compiling MPI yourself.

zlib

1.2.11

use system zlib if available (libz.a or libz.so)

hdf5

1.10.7

A parallel version is required.

GNU Scientific Library

2.7

VTK

?

optional: required if you want to compile H5hut with the VTK to H5hut mesh converter.

H5hut

2.0.0rc6

A parallel version is required.

boost

1.76.0

The following boost libraries are required: chrono, filesystem, iostreams, regex, serialization, system, timer

ParMETIS

4.0.3

optional: required for OPAL compiled with SAAMG solver.

OpenBLAS

0.3.15 or newer

optional: required for OPAL compiled with SAAMG solver.

trilinos

13.0.1

optional: required for OPAL compiled with SAAMG solver.

AMReX

18.07

optional: required for OPAL compiled with AMR solvers.

MITHRA

2.0

optional: required for OPAL compiled with FEL simulation.

google-test

1.10.0 or newer

optional: Required to run the unit-tests

Compiler

GNU Compiler Collection

The GNU Compiler Collection (GCC) is the recommended compiler for OPAL on a Linux system and on Windows with the Windows Services for Linux. If you want to use GCC on macOS, it is recommended to use GCC provided by Macports, Homebrew, Fink or another software package manager.

NOTE: If you do not want to use the compilers provided by the system (Linux distribution, Xcode,…​), make sure that the commands cc and c++ are calling the right binary. At least with GCC from Macports cc and c++ are not set with port select.

For compiling GCC you need:

Name recommended Versions Notes

GNU Multiple Precision Arithmetic Library (GMP)

6.2.1 or newer

optional: if you want to compile GCC

GNU MPFR Library

4.1.0

optional: if you want to compile GCC

GNU MPC Library

1.2.1

optional: if you want to compile GCC

Clang/LLVM (macOS only)

Clang is the recommended compiler for OPAL on macOS - as long as you do not need AMR. If you want to compile OPAL with AMR, a Fortran compiler is required. In this case you can try with the new Flang front-end of LLVM or GCC from one of the package managers.

Note: The LLVM Fortran front-end Flang is not included in Xcode.

Name recommended Version Notes

Clang (LLVM)

12.4

Clone repository
  • Examples
    • FFA
    • RFPhotoInjector
    • cyclotron
    • regressiontestexamples
  • FFA school prerequisites
  • For Developers
    • CodingStyle
    • Compile OPAL at CSCS
    • Compile OPAL
    • Compile required software
    • File Format for stat Storage
    • Most Used Directories in the Code
    • OPAL Development Workflow
    • Pmodules
    • Release Procedure
    • Setup build environment at PSI
View All Pages