# Install flang with Homebrew, apt, dnf, Nix

LLVM Fortran Frontend. Version 22.1.8 via Homebrew; verified 2026-06-21.

## Install

```sh
sudo av install brew:flang
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install flang
```

  Evidence: local Homebrew formula metadata

### Linux

- Debian apt (92%):

```sh
sudo apt install flang
```

  Evidence: Debian stable package indexes: flang from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install flang
```

  Evidence: Fedora Rawhide package metadata: flang from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#flang
```

  Evidence: nixpkgs package indexes: flang from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix

## Package facts

- **Package key:** brew:flang
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/flang>
- **Version:** 22.1.8
- **Source summary:** LLVM Fortran Frontend
- **Homepage:** <https://flang.llvm.org/>
- **Repository:** <https://github.com/llvm/llvm-project>
- **Upstream docs:** <https://flang.llvm.org/docs>
- **License:** Apache-2.0 WITH LLVM-exception
- **Source archive:** <https://github.com/llvm/llvm-project/releases/download/llvmorg-22.1.8/llvm-project-22.1.8.src.tar.xz>
- **Last updated:** 2026-06-21T01:50:33Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- bbc (cli)
- f18-parse-demo (cli)
- fir-lsp-server (cli)
- fir-opt (cli)
- flang (cli)
- flang-22 (cli)
- flang-new (cli)
- tco (cli)
- bbc (alias)
- f18-parse-demo (alias)
- fir-lsp-server (alias)
- fir-opt (alias)
- flang (alias)
- flang-22 (alias)
- flang-new (alias)
- tco (alias)

## Dependencies

- llvm

## Build dependencies

- cmake
- ninja

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 22.1.8
- Package-manager updated: 2026-06-21
- Local data: ok
- Upstream repository: https://github.com/llvm/llvm-project
- info: No cached GitHub release or tag data was available.
## Project history and usage

Flang is LLVM's Fortran frontend. The official documentation distinguishes LLVM Flang from Classic Flang, describes it as a separate and independent Fortran compiler, and notes that LLVM Flang is under active development.

### Project history

LLVM Flang lives in the monorepo under `llvm-project/flang` and is documented by the Flang team. The documentation copyright spans 2017-2026 and the current docs describe an actively developed frontend that can generate executables for a number of examples while some functionality remains missing.

The compiler architecture is documented around analysis, lowering, and object-code generation/linking. Analysis creates a decorated parse tree and symbol table, lowering converts that information into FIR, a Fortran dialect of MLIR, and later passes produce LLVM IR for the existing LLVM code-generation pipeline.

### Adoption history

Flang's adoption is tied to the LLVM toolchain rather than a standalone language ecosystem. It gives LLVM distributions, package managers, and compiler users a Fortran frontend that participates in LLVM's common infrastructure.

The official docs' distinction between LLVM Flang and Classic Flang matters for users and packagers because the name has referred to more than one Fortran compiler lineage.

### How it is used

Users invoke `flang` as a compiler driver for Fortran source. The docs also show developer-oriented `-fc1` and `-mmlir` commands for dumping preprocessing output, parse trees, symbol tables, FIR, MLIR pass output, and LLVM IR.

No user credentials or persistent configuration file are documented in the supplied curation or the official Flang docs.

### Why package nerds care

Flang is significant because it brings Fortran into the LLVM package universe, making Fortran compilation part of the same modular compiler stack used by Clang and other LLVM frontends.

For compiler-package curators, the key nerd detail is FIR: a Fortran-specific IR layered on MLIR before conversion to LLVM IR, exposing more of the compiler pipeline than a black-box Fortran driver.

### Timeline

- 2017: Flang documentation copyright begins in the official docs.
- 2020s: LLVM Flang is documented as separate from Classic Flang and under active development.
- 2026: Current docs include Flang 23 in-progress release notes and updated compiler-phase documentation.

### Related projects

- Classic Flang is the separate historical compiler explicitly distinguished by the docs.
- LLVM provides the broader compiler infrastructure and monorepo.
- MLIR and FIR are central to Flang lowering before LLVM IR generation.

### Sources

- <https://flang.llvm.org/docs>
- <https://flang.llvm.org/docs/Overview.html>
- <https://github.com/llvm/llvm-project>


## Security Notes

No matching local secret-handling manifest was found for flang. Nucleus package metadata is still published here so future coverage has a stable package URL.


## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** flang
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Debian apt - flang - 1:19.0-63: normalized package name match | Debian stable package indexes: flang from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Fortran compiler
- Nix - flang: normalized package name match | nixpkgs package indexes: flang from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
- Ubuntu apt - flang - 1:18.0-59~exp2: normalized package name match | Ubuntu 24.04 LTS package indexes: flang from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Fortran compiler
- dnf - flang - 22.1.7-1.fc45: normalized package name match | Fedora Rawhide package metadata: flang from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | a Fortran language front-end designed for integration with LLVM | https://flang.llvm.org


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [Language runtime packages](https://www.automicvault.com/pkg/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [llvm](https://www.automicvault.com/pkg/brew/llvm/) - Runtime dependency declared by Homebrew.
- [cmake](https://www.automicvault.com/pkg/brew/cmake/) - Build dependency declared by Homebrew.
- [ninja](https://www.automicvault.com/pkg/brew/ninja/) - Build dependency declared by Homebrew.
- [clang-format](https://www.automicvault.com/pkg/brew/clang-format/) - Shares the same upstream source repository.
- [clang-format@11](https://www.automicvault.com/pkg/brew/clang-format-11/) - Shares the same upstream source repository.
- [lld](https://www.automicvault.com/pkg/brew/lld/) - Shares the same upstream source repository.
- [ldc](https://www.automicvault.com/pkg/brew/ldc/) - Shares av.db curated category or tags: cli, compiler, language-runtime, llvm.
- [llgo](https://www.automicvault.com/pkg/brew/llgo/) - Shares av.db curated category or tags: cli, compiler, language-runtime, llvm.
- [c3c](https://www.automicvault.com/pkg/brew/c3c/) - Shares av.db curated category or tags: cli, compiler, language-runtime.
- [cython](https://www.automicvault.com/pkg/brew/cython/) - Shares av.db curated category or tags: cli, compiler, language-runtime.
- [dmd](https://www.automicvault.com/pkg/brew/dmd/) - Shares av.db curated category or tags: cli, compiler, language-runtime.
- [ghc](https://www.automicvault.com/pkg/brew/ghc/) - Shares av.db curated category or tags: cli, compiler, language-runtime.
- [halide](https://www.automicvault.com/pkg/brew/halide/) - Shares av.db curated category or tags: cli, compiler, language-runtime.
- [idris2](https://www.automicvault.com/pkg/brew/idris2/) - Shares av.db curated category or tags: cli, compiler, language-runtime.

## Combined YAML source

View the package source record on GitHub. [combined/flang.yml](https://github.com/automic-vault/db/blob/main/combined/flang.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
