Fortran Package Manager

Fortran Package Manager

Fortran Package Manager

Package manager and build system for Fortran

Welcome to the documentation for the Fortran Package Manager (fpm).


These pages are currently under construction. Please help us improve them by contributing content or reporting issues.


Instructions on how to install fpm across Windows, Linux, macOS and more.


Learn about using fpm for Fortran development, creating projects and managing dependencies.

How-To Guides

Practical guides and recipes to solve specific problems with fpm


Specifications of fpm components and implementation references


fpm supports local and online registries for downloading dependencies. Learn more about the fpm registry and how to use it.


Recent events around the Fortran Package Manager, such as new releases, conference talks, and new packages will be announced here.

  • Fpm version 0.10.0 released (2024-01-08)

    The latest release of the Fortran Package Manager (FPM) showcases a range of updates geared towards enhancing functionality and user experience. Key improvements include significant advancements in MPI support, now allowing the usage of MPI modules in metapackages. On the command line interface, a --dry-run option for fpm publish has been added, allowing users to simulate the publishing process. This release also brings various bug fixes and performance improvements. For a full list of changes please see below.

  • Fpm version 0.9.0 released (2023-06-02)

    Registry and Metapackages.

  • Fpm version 0.8.2 released (2023-05-11)

    Registry preview release.

  • Fpm version 0.8.1 released (2023-04-11)

    This release introduces a hotfix for the automated dependency tree feature introduced in v0.8.0. Fpm now restored backward-compatible dependency priority, which ensures that, whenever different versions of the same dependency are found down the dependency tree, the first and foremost is used. Unnecessary dependency updates are also shed from the build process.

  • Fpm version 0.8.0 released (2023-04-07)

    This release introduces support for enabling and disabling language features in fpm, such as implicit typing or default source form. By default, fpm now tries to disable implicit typing rules, implicit external interfaces and assumes the source form is always free. The options can be overwritten in the manifest for each project.