compiler: Compiler toolchain to setup, available options are
gcc for gfortran
intel for ifx
intel-classic for ifort
lfortran for lfortran
nvidia-hpc for nvfortran
aocc for flang (AMD Optimizing C/C++ and Fortran Compilers)
version: Version of the compiler toolchain. See runner compatibility charts below.
update-environment: Whether to set environment variables (FC etc, defaults true).
Outputs
The action sets the following outputs:
fc: Fortran compiler executable, e.g. gfortran
cc: C compiler executable, e.g. gcc
cxx: C++ compiler executable, e.g. g++
C/C++ compilers of the same toolchain/version are provided where available. If a standalone Fortran compiler is selected, the action will attempt to configure compatible C/C++ compilers (typically GCC, or MSVC on Windows), but this is not guaranteed — use at your own risk.
Environment variables
The same values are also set as environment variables:
FC
CC
CXX
Corresponding FPM environment variables are also set:
Toolchain support varies across GitHub-hosted runner images.
runner
aocc 5.1.0
aocc 5.2.0
gcc 13
gcc 14
gcc 15
intel 2021.1
intel 2021.1.2
intel 2021.2
intel 2021.4
intel 2022.0
intel 2022.1
intel 2022.2
intel 2022.2.1
intel 2023.0
intel 2023.1
intel 2023.2
intel 2024.0
intel 2024.1
intel 2025.0
intel 2025.2
intel 2025.3
intel 2026.0
intel 2026.1
intel-classic 2021.1
intel-classic 2021.1.2
intel-classic 2021.2
intel-classic 2021.3
intel-classic 2021.4
intel-classic 2021.5
intel-classic 2021.6
intel-classic 2021.7.1
intel-classic 2021.8
intel-classic 2021.9
intel-classic 2021.10
intel-classic 2021.11
intel-classic 2021.12
lfortran 0.57.0
lfortran 0.58.0
nvidia-hpc 23.3
nvidia-hpc 23.5
nvidia-hpc 23.7
nvidia-hpc 23.9
nvidia-hpc 23.11
nvidia-hpc 24.1
nvidia-hpc 24.3
nvidia-hpc 24.5
nvidia-hpc 25.1
nvidia-hpc 25.3
nvidia-hpc 25.5
nvidia-hpc 25.7
nvidia-hpc 25.9
nvidia-hpc 26.1
macos-14
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
macos-15
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
macos-15-intel
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
macos-26
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
macos-26-intel
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
ubuntu-22.04
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
ubuntu-24.04
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
windows-2022
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
windows-2025
✓
✓
✓
✓
✓
✓
✓
✓
windows-2025-vs2026
✓
✓
✓
✓
✓
✓
✓
✓
Note: Intel’s ifx compiler is not supported on macOS, so the intel option redirects to intel-classic (ifort).
Note: LFortran is currently only discoverable by name with bash on Windows, see here for context.
License
Licensed under the Apache License, Version 2.0 (the “License”);
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an “as is” basis,
without warranties or conditions of any kind, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Unless you explicitly state otherwise, any contribution intentionally
submitted for inclusion in this project by you, as defined in the
Apache-2.0 license, shall be licensed as above, without any additional
terms or conditions.
Setup Fortran
Set up a Fortran compiler on Ubuntu, macOS and Windows runners.
Usage
Options
gfortranifxifortlfortrannvfortranflang(AMD Optimizing C/C++ and Fortran Compilers)FCetc, defaults true).Outputs
The action sets the following outputs:
fc: Fortran compiler executable, e.g.gfortrancc: C compiler executable, e.g.gcccxx: C++ compiler executable, e.g.g++C/C++ compilers of the same toolchain/version are provided where available. If a standalone Fortran compiler is selected, the action will attempt to configure compatible C/C++ compilers (typically GCC, or MSVC on Windows), but this is not guaranteed — use at your own risk.
Environment variables
The same values are also set as environment variables:
FCCCCXXCorresponding FPM environment variables are also set:
FPM_FCFPM_CCFPM_CXXThese are made available to subsequent workflow steps via the
GITHUB_ENVenvironment file mechanism.Runner compatibility
Toolchain support varies across GitHub-hosted runner images.
Note: Intel’s
ifxcompiler is not supported on macOS, so theinteloption redirects tointel-classic(ifort).Note: LFortran is currently only discoverable by name with
bashon Windows, see here for context.License
Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “as is” basis, without warranties or conditions of any kind, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be licensed as above, without any additional terms or conditions.