← Package directory
Available on winget

Install Fortran Package Manager

A Fortran package manager and build system

Install with winget
winget install --id FortranLang.fpm
Upgrade
winget upgrade --id FortranLang.fpm
Uninstall
winget uninstall --id FortranLang.fpm

About Fortran Package Manager

fpm is a package manager that helps you create Fortran projects from source -- it automatically determines dependencies! Most significantly fpm lets you draw upon other fpm packages in distributed git repositories as if the packages were a basic part of your default programming environment, as well as letting you share your projects with others in a similar manner. All output goes into the directory "build/" which can generally be removed and rebuilt if required. Note that if external packages are being used you ne...

What's new in 0.13.0

What's Changed - errata: CLI help line too long by @perazz in https://github.com/fortran-lang/fpm/pull/1144 - [windows] gcc 15 hotfix: use non-default initializer for compile_command_t by @perazz in https://github.com/fortran-lang/fpm/pull/1147 - [macOS] Standardize dynamic library paths using @rpath by @perazz in https://github.com/fortran-lang/fpm/pull/1146 - gcc-15 fixes: segfault on fpm install (#1149) and metapackages by @krystophny in https://github.com/fortran-lang/fpm/pull/1150 - fix: package versions by @perazz in https://github.com/fortran-lang/fpm/pull/1154 - CLI repetition patch by @Albkat in https://github.com/fortran-lang/fpm/pull/1163 - fix: OpenMP flags incorrectly applied to C/C++ compilers that don't s… by @krystophny in https://github.com/fortran-lang/fpm/pull/1161 - bugfix: manifest test failure by @perazz in https://github.com/fortran-lang/fpm/pull/1172 - fix: Skip -fPIC flag for flang-new on Windows MSVC targets by @perazz in https://github.com/fortran-lang/fpm/pull/1167 - Fix: Add -cpp flag support for flang-new compiler by @perazz in https://github.com/fortran-lang/fpm/pull/1169 - remove duplicate class fortran_features_t, replace with fortran_config_t by @perazz in https://github.com/fortran-lang/fpm/pull/1175 - feat: multiple simultaneous library targets by @perazz in https://github.com/fortran-lang/fpm/pull/1168 - feat: custom module install directory by @perazz in https://github.com/fortran-lang/fpm/pull/1170 - feat: selective clean functionality by @perazz in https://github.com/fortran-lang/fpm/pull/1171 - feat: custom build folder by @perazz in...

Read release notes

Version history

Version Updated Notes
0.13.0 Unknown What's Changed - errata: CLI help line too long by @perazz in https://github.com/fortran-lang/fpm/pull/1144 - [windows] gcc 15 hotfix: use non-default initializer for compile_command_t by @perazz in https://github.com/fo...
0.12.0 Unknown What's Changed - fix Windows bootstrap by @perazz in https://github.com/fortran-lang/fpm/pull/1107 - [openmp] add flang-new syntax by @perazz in https://github.com/fortran-lang/fpm/pull/1113 - Add homepage and descriptio...
0.11.0 Unknown What's Changed - Patch toml_error by @perazz in https://github.com/fortran-lang/fpm/pull/1011 - Fortran standard compliance fixes by @perazz in https://github.com/fortran-lang/fpm/pull/1013 - fix: add fpm_model.json to t...
0.10.1 Unknown - Add gcc versions 11,12,13 for CI validation by @perazz in https://github.com/fortran-lang/fpm/pull/981 - ci: adds monthly dependabot updates on GitHub Actions by @gnikit in https://github.com/fortran-lang/fpm/pull/983...
0.10.0 Unknown - search MPI runner in %MS_MPI% and PATH also in get_mpi_runner by @perazz in #924 - Add --dry-run option to fpm publish by @minhqdao in #918 - MPI: add mpi and mpi_f08 to the list of external modules by @perazz in #930...
0.9.0 Unknown Changelog - build: changed file ext to enable preprocessor by @gnikit in #911 - Not get tmp folder from env by @minhqdao in #912 - install.sh: fallback to 0.8.0 if in trouble fetching github by @perazz in #913 - Fix retu...
0.8.2 Unknown Changelog - Not store temporary data in .local (#900) by @minhqdao - Add flags to link main programs with C/C++ main (#896) by @perazz - replace unix with is_unix to avoid intel fpp collisions (#894) by @perazz - Fix boo...
0.7.0 Unknown Release notes
0.6.0 Unknown Release notes