# Install fftw with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman

C routines to compute the Discrete Fourier Transform. Version 3.3.11 via Homebrew; verified 2026-04-22.

## Install

```sh
sudo av install brew:fftw
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install fftw
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install fftw
```

  Evidence: MacPorts ports tree: math/fftw/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- apk (92%):

```sh
sudo apk add fftw
```

  Evidence: Alpine Linux edge package indexes: fftw from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz

- Debian apt (92%):

```sh
sudo apt install fftw-dev
```

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

- dnf (92%):

```sh
sudo dnf install fftw
```

  Evidence: Fedora Rawhide package metadata: fftw 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#fftw
```

  Evidence: nixpkgs package indexes: pkgs/by-name/ff/fftw/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S fftw
```

  Evidence: Arch Linux sync databases: fftw from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

## Package facts

- **Package key:** brew:fftw
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/fftw>
- **Version:** 3.3.11
- **Source summary:** C routines to compute the Discrete Fourier Transform
- **Homepage:** <https://fftw.org>
- **Repository:** <https://github.com/FFTW/fftw3>
- **Upstream docs:** <https://www.fftw.org/doc>
- **License:** GPL-2.0-or-later AND BSD-2-Clause
- **Source archive:** <https://fftw.org/fftw-3.3.11.tar.gz>
- **Last updated:** 2026-04-22T13:49:43Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- fftw-wisdom (cli)
- fftw-wisdom-to-conf (cli)
- fftwf-wisdom (cli)
- fftwl-wisdom (cli)
- fftw-wisdom (alias)
- fftw-wisdom-to-conf (alias)
- fftwf-wisdom (alias)
- fftwl-wisdom (alias)

## Dependencies

- libomp

## Build dependencies

- open-mpi

## 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: 3.3.11
- Package-manager updated: 2026-04-22
- Local data: ok
- Upstream repository: https://fftw.org
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

FFTW, the Fastest Fourier Transform in the West, is a C library for discrete Fourier transforms of complex, real, multidimensional, and special symmetric data. It is one of the classic free-software numerical libraries because it combines a stable C API with runtime planning that adapts transform algorithms to the host machine.

### Project history

FFTW was developed at MIT by Matteo Frigo and Steven G. Johnson. The official site frames its goal as a portable free FFT library that can compete with vendor-tuned codes while remaining usable across architectures without application changes.

The early public release line began with FFTW 1.0 in March 1997. The 1998 ICASSP paper described FFTW as an adaptive software architecture for FFTs, and the 1999 PLDI paper described the codelet generator behind its fast generated kernels.

FFTW 3.0 arrived in April 2003 with an API incompatible with FFTW 2.x, trading compatibility for performance and generality. The current manual documents the 3.x planner model: create a plan once, reuse it for repeated transforms, and optionally save planning knowledge as wisdom.

The FFTW3 design paper appeared in Proceedings of the IEEE in 2005 and remains the preferred general reference named by the project. Later 3.3 releases added modern CPU and parallel features, including AVX, ARM Neon, MPI, Fortran 2003 interfaces, AVX2, AVX512, VSX, SVE, LoongArch SIMD, and additional cycle counters.

### Adoption history

FFTW is distributed by mainstream Unix package managers, including Homebrew, Debian/Ubuntu, Fedora, Arch, MacPorts, Nix, and Alpine according to the package facts in this batch. Its availability in both operating-system packages and source builds reflects its role as a common dependency for scientific, signal-processing, audio, imaging, and simulation software.

The project also maintains benchFFT results and positions FFTW against other public FFT implementations and vendor libraries. That benchmark culture helped make FFTW a default comparison point for package maintainers deciding whether a package should use a system FFT library or a bundled implementation.

### How it is used

Library users link against FFTW and create plans for one-dimensional, multidimensional, real, complex, DCT/DST, or Hartley transforms. The manual describes basic, advanced, and guru interfaces, with the basic interface intended for most users and guru interfaces for custom layouts and strides.

The Homebrew package also installs command-line utilities such as `fftw-wisdom`, `fftw-wisdom-to-conf`, and precision-specific wisdom helpers. These are package-visible tools around FFTW's planning cache rather than the main reason most software depends on the library.

### Why package nerds care

FFTW matters to package nerds because it sits at the intersection of ABI policy, CPU feature selection, license policy, and performance tuning. Distribution maintainers must choose which SIMD variants to enable, whether to build thread and MPI variants, and how to expose the GPL library to downstream packages.

It is also a canonical example of a library whose best behavior depends on installation choices and local hardware. The upstream release notes even warn distribution maintainers that enabling every SIMD option can increase planning time for little general-purpose benefit.

### Timeline

- 1997: FFTW 1.0 released.
- 1998: FFTW 2.0 released and the ICASSP adaptive-architecture paper published.
- 1999: PLDI paper described FFTW's FFT compiler and codelet generator.
- 2003: FFTW 3.0 released with an incompatible, more general API.
- 2005: FFTW3 design and implementation paper published in Proceedings of the IEEE.
- 2011: FFTW 3.3 added AVX, MPI distributed-memory transforms, and a Fortran 2003 API.
- 2026: FFTW 3.3.11 added SVE, LoongArch SIMD, and new cycle-counter support.

### Related projects

- FFTW is commonly compared with vendor FFT libraries and public FFT implementations through benchFFT. It is also related to downstream numerical packages that choose between bundled FFT code and a system FFTW dependency.

### Sources

- <https://www.fftw.org/>
- <https://www.fftw.org/doc/Introduction.html>
- <https://www.fftw.org/release-notes.html>
- <https://www.fftw.org/fftw-paper-ieee.pdf>
- <https://github.com/FFTW/fftw3>
- <https://formulae.brew.sh/formula/fftw>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

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

## Other Package-Manager Records

- Debian apt - fftw-dev - 2.1.5-7+b1: normalized package name match | Debian stable package indexes: fftw-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | library for computing Fast Fourier Transforms | https://fftw.org
- Debian apt - fftw-docs - 2.1.5-7: normalized package name match | Debian stable package indexes: fftw-docs from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | documentation for fftw | https://fftw.org
- Debian apt - fftw2 - 2.1.5-7+b1: normalized package name match | Debian stable package indexes: fftw2 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | library for computing Fast Fourier Transforms | https://fftw.org
- Debian apt - sfftw-dev - 2.1.5-7+b1: normalized package name match | Debian stable package indexes: sfftw-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | library for computing Fast Fourier Transforms | https://fftw.org
- Debian apt - sfftw2 - 2.1.5-7+b1: normalized package name match | Debian stable package indexes: sfftw2 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | library for computing Fast Fourier Transforms | https://fftw.org
- Nix - fftw: normalized package name match | nixpkgs package indexes: pkgs/by-name/ff/fftw/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - fftw-dev - 2.1.5-6build2: normalized package name match | Ubuntu 24.04 LTS package indexes: fftw-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | library for computing Fast Fourier Transforms | https://fftw.org
- Ubuntu apt - fftw-docs - 2.1.5-6build2: normalized package name match | Ubuntu 24.04 LTS package indexes: fftw-docs from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | documentation for fftw | https://fftw.org
- Ubuntu apt - fftw2 - 2.1.5-6build2: normalized package name match | Ubuntu 24.04 LTS package indexes: fftw2 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | library for computing Fast Fourier Transforms | https://fftw.org
- Ubuntu apt - sfftw-dev - 2.1.5-6build2: normalized package name match | Ubuntu 24.04 LTS package indexes: sfftw-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | library for computing Fast Fourier Transforms | https://fftw.org
- Ubuntu apt - sfftw2 - 2.1.5-6build2: normalized package name match | Ubuntu 24.04 LTS package indexes: sfftw2 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | library for computing Fast Fourier Transforms | https://fftw.org
- apk - fftw - 3.3.11-r0: normalized package name match | Alpine Linux edge package indexes: fftw from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Discrete Fourier transform (DFT) library | http://www.fftw.org/
- apk - fftw-dev - 3.3.11-r0: normalized package name match | Alpine Linux edge package indexes: fftw-dev from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Discrete Fourier transform (DFT) library (development files) | http://www.fftw.org/
- apk - fftw-doc - 3.3.11-r0: normalized package name match | Alpine Linux edge package indexes: fftw-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Discrete Fourier transform (DFT) library (documentation) | http://www.fftw.org/
- apk - fftw-double-libs - 3.3.11-r0: normalized package name match | Alpine Linux edge package indexes: fftw-double-libs from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Discrete Fourier transform (DFT) library | http://www.fftw.org/
- apk - fftw-long-double-libs - 3.3.11-r0: normalized package name match | Alpine Linux edge package indexes: fftw-long-double-libs from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Discrete Fourier transform (DFT) library | http://www.fftw.org/


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Scientific computing packages](https://www.automicvault.com/pkg/scientific-computing-tools/) - Matched scientific computing metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [open-mpi](https://www.automicvault.com/pkg/brew/open-mpi/) - Build dependency declared by Homebrew.
- [arss](https://www.automicvault.com/pkg/brew/arss/) - Popular package that depends on this formula.
- [asymptote](https://www.automicvault.com/pkg/brew/asymptote/) - Popular package that depends on this formula.
- [cava](https://www.automicvault.com/pkg/brew/cava/) - Popular package that depends on this formula.
- [cp2k](https://www.automicvault.com/pkg/brew/cp2k/) - Popular package that depends on this formula.
- [damask-grid](https://www.automicvault.com/pkg/brew/damask-grid/) - Popular package that depends on this formula.
- [gmic](https://www.automicvault.com/pkg/brew/gmic/) - Popular package that depends on this formula.
- [gnuradio](https://www.automicvault.com/pkg/brew/gnuradio/) - Shares av.db curated category or tags: cli, science, signal-processing.
- [itpp](https://www.automicvault.com/pkg/brew/itpp/) - Shares av.db curated category or tags: cli, numerical-computing, science, signal-processing.
- [luaradio](https://www.automicvault.com/pkg/brew/luaradio/) - Shares av.db curated category or tags: cli, science, signal-processing.
- [aamath](https://www.automicvault.com/pkg/brew/aamath/) - Shares av.db curated category or tags: cli, math, science.
- [ginac](https://www.automicvault.com/pkg/brew/ginac/) - Shares av.db curated category or tags: cli, math, science.
- [libqalculate](https://www.automicvault.com/pkg/brew/libqalculate/) - Shares av.db curated category or tags: cli, math, science.
- [limesuite](https://www.automicvault.com/pkg/brew/limesuite/) - Shares av.db curated category or tags: cli, science, signal-processing.
- [abpoa](https://www.automicvault.com/pkg/brew/abpoa/) - Shares av.db curated category or tags: c-library, cli, science.
- [suite-sparse](https://www.automicvault.com/pkg/brew/suite-sparse/) - Local package facts share a topical domain. Shared terms: cli, computing, libomp, numerical, numerical-computing.

## Combined YAML source

View the package source record on GitHub. [combined/fftw.yml](https://github.com/automic-vault/db/blob/main/combined/fftw.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
