Since 2015, NVIDIA has supported Flang: a Fortran compiler frontend to LLVM. Flang f18 targets modern Fortran 2008 / 2018 syntax and is implemented in C++17 internally. Flang may become part of LLVM 11, as per the LLVM-Dev mailing list. The binary download release of Flang hasn’t been updated since early 2019. To get the current version of Flang, you may need to build yourself.
Build system support
Flang is supported by Cmake ≥ 3.10, although CMake ≥ 3.14 is recommended in general to support more Fortran 2008 features.
Meson ≥ 0.50 supports Flang and in general Meson is easier to use and more powerful than CMake.
Select Flang in the build system as usual by setting environment variables:
How to install Flang
Pick ONE of the following:
- Download the latest Flang Linux binary release
- Compile from source (non-trivial)
Download Flang binary
Flang prerelease binaries are provided for Linux.
Download Flang binary and extract to
export PATH=$PATH:$HOME/.local/flang/bin export LD_LIBRARY_PATH=$HOME/.local/flang/lib/:$LD_LIBRARY_PATH
Open a new Terminal and check
Building the LLVM Flang Fortran compiler from source is a resource-intensive process.
- A moderately powerful PC is needed to compile Flang with > 100 GB of free space on the drive you build Flang on. Flang install is small, but Flang build process requires a lot of drive space.
- Don’t use too much RAM with the
makefor building Flang. It maxed out RAM on a PC with 32 GB of RAM with
make -j. Try just plain
- follow the Flang build instructions sequentially. Don’t try to build later parts while earlier parts are still building, this will not work properly.
- Flang missed LLVM 10 merge window