Skip to content

Installation

Requirements

A modern Fortran compiler with Fortran 2003+ support.

In src/third_party there are dependencies sources, they are managed managed automatically by both build paths below.

With Fortran Package Manager no manual setup is needed:

bash
git clone https://github.com/szaghi/BeFoR64
cd BeFoR64
fpm build
fpm test

To use BeFoR64 as a dependency in your own fpm project, add to your fpm.toml:

toml
[dependencies]
BeFoR64.git = "https://github.com/szaghi/BeFoR64"

Option 2 — FoBiS.py

FoBiS.py reads the fobos file at the repository root and handles all inter-module dependencies automatically.

bash
pip install FoBiS.py

git clone https://github.com/szaghi/BeFoR64
cd BeFoR64
git submodule update --init

Building the library

bash
# Static library (release)
FoBiS.py build -mode static-gnu

# Shared library (release)
FoBiS.py build -mode shared-gnu

# Debug variants
FoBiS.py build -mode static-gnu-debug
FoBiS.py build -mode shared-gnu-debug

Output is written to ./static/ or ./shared/; .mod files go to ./mod/.

Replace gnu with intel for the Intel compiler (static-intel, etc.).

Building and running the doctests

bash
FoBiS.py build -mode tests-gnu
bash scripts/run_tests.sh

Listing all available modes

bash
FoBiS.py build -lmodes

Coverage analysis

bash
FoBiS.py rule -ex makecoverage

Generating API documentation

Requires Ford:

bash
pip install ford
FoBiS.py rule -ex makedoc