# Install fpc with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman, zypper

Free Pascal: multi-architecture Pascal compiler. Version 3.2.2 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:fpc
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install fpc
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install fpc
```

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

### Linux

- apk (92%):

```sh
sudo apk add fpc
```

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

- Debian apt (92%):

```sh
sudo apt install fp-compiler
```

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

- dnf (92%):

```sh
sudo dnf install fpc
```

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

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

- pacman (92%):

```sh
sudo pacman -S fpc
```

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

- zypper (92%):

```sh
sudo zypper install fpc
```

  Evidence: openSUSE Tumbleweed package metadata: fpc from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

## Package facts

- **Package key:** brew:fpc
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/fpc>
- **Version:** 3.2.2
- **Source summary:** Free Pascal: multi-architecture Pascal compiler
- **Homepage:** <https://www.freepascal.org/>
- **Repository:** <https://gitlab.com/freepascal.org/fpc/source>
- **Upstream docs:** <https://www.freepascal.org/develop.var>
- **License:** GPL-2.0-or-later
- **Source archive:** <https://downloads.sourceforge.net/project/freepascal/Source/3.2.2/fpc-3.2.2.source.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- bin2obj (cli)
- chmcmd (cli)
- chmls (cli)
- cldrparser (cli)
- compileserver (cli)
- data2inc (cli)
- delp (cli)
- fd2pascal (cli)
- fpc (cli)
- fpcjres (cli)
- fpclasschart (cli)
- fpcmake (cli)
- fpcmkcfg (cli)
- fpcres (cli)
- fpcreslipo (cli)
- fpcsubst (cli)
- fpdoc (cli)
- fppkg (cli)
- fprcp (cli)
- h2pas (cli)
- h2paspp (cli)
- instantfpc (cli)
- json2pas (cli)
- makeskel (cli)
- mka64ins (cli)
- mkarmins (cli)
- mkinsadd (cli)
- mkx86ins (cli)
- pas2fpm (cli)
- pas2jni (cli)
- pas2js (cli)
- pas2ut (cli)
- plex (cli)
- postw32 (cli)
- ppca64 (cli)
- ppdep (cli)
- ppudump (cli)
- ppufiles (cli)
- ppumove (cli)
- ptop (cli)
- pyacc (cli)
- rmcvsdir (cli)
- rstconv (cli)
- unihelper (cli)
- unitdiff (cli)
- webidl2pas (cli)
- bin2obj (alias)
- chmcmd (alias)
- chmls (alias)
- cldrparser (alias)
- compileserver (alias)
- data2inc (alias)
- delp (alias)
- fd2pascal (alias)
- fpc (alias)
- fpcjres (alias)
- fpclasschart (alias)
- fpcmake (alias)
- fpcmkcfg (alias)
- fpcres (alias)
- fpcreslipo (alias)
- fpcsubst (alias)
- fpdoc (alias)
- fppkg (alias)
- fprcp (alias)
- h2pas (alias)
- h2paspp (alias)
- instantfpc (alias)
- json2pas (alias)
- makeskel (alias)
- mka64ins (alias)
- mkarmins (alias)
- mkinsadd (alias)
- mkx86ins (alias)
- pas2fpm (alias)
- pas2jni (alias)
- pas2js (alias)
- pas2ut (alias)
- plex (alias)
- postw32 (alias)
- ppca64 (alias)
- ppdep (alias)
- ppudump (alias)
- ppufiles (alias)
- ppumove (alias)
- ptop (alias)
- pyacc (alias)
- rmcvsdir (alias)
- rstconv (alias)
- unihelper (alias)
- unitdiff (alias)
- webidl2pas (alias)

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_big_sur, arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, big_sur, catalina, monterey, sonoma, ventura

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 3.2.2
- Local data: ok
- Upstream repository: https://www.freepascal.org/
- info: No package-manager update timestamp was available.
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

Free Pascal Compiler, commonly FPC, is a mature open-source compiler for Pascal and Object Pascal. Its official site describes it as a 16-, 32-, and 64-bit Turbo Pascal and Delphi-compatible compiler with many CPU and operating-system targets.

### Project history

The compiler was originally named FPK-Pascal. The official FAQ gives a compact project history: it started in June 1993, small programs worked by October 1993, the compiler compiled its own sources by March 1995, it was released on the Internet in March 1996, and version 1.0 arrived in July 2000.

FPC grew from a Turbo Pascal-compatible compiler into a broad language-runtime project with compiler, RTL, packages, utilities, tests, installer, documentation, and release-building repositories. The home page lists targets across x86, AMD64, PowerPC, SPARC, ARM, AArch64, MIPS, Motorola 68k, AVR, JVM, and more, with development support for RISC-V, Xtensa, Z80, WebAssembly, LLVM, and pas2js.

### Adoption history

FPC's adoption is closely tied to Pascal compatibility and cross-platform reach. It gave Pascal and Object Pascal users a free compiler path for Linux, Windows, BSD, macOS, DOS, OS/2, embedded platforms, and later mobile and unusual targets.

In August 2021, the project announced that all SVN repositories had been converted to Git and moved to GitLab, with the Mantis bug tracker also converted. That move is a clear package-history milestone because it changed how downstream packagers, contributors, and distribution maintainers track source.

### How it is used

Users compile Pascal and Object Pascal programs with fpc and related target-specific ppcXYZ compiler binaries. The distribution also includes documentation, tools such as fpcmake, fpdoc, h2pas, ppudump, and package sources including the Free Component Library.

The user guide documents fpc.cfg as the compiler configuration file. On Unix-like systems, the compiler looks in the current directory, the user's home directory as .fpc.cfg, PPC_CONFIG_PATH, an etc directory above the compiler directory, and /etc unless -n disables config lookup.

### Why package nerds care

FPC is package-nerd significant because it is both a compiler package and a bootstrap ecosystem. Packaging it means managing compiler binaries, RTL units, packages, tools, documentation, target support, and the usual self-hosting concerns.

It also anchors Lazarus and a broader Object Pascal open-source stack, making it a key dependency for desktop GUI development, legacy Pascal migration, cross-compilation, and Pascal-to-JavaScript workflows.

### Timeline

- 1993: FPK-Pascal project started.
- 1995: Compiler compiled its own sources.
- 1996: Released on the Internet.
- 2000: Version 1.0 released.
- 2015: Version 3.0.0 released.
- 2020: Version 3.2.0 released.
- 2021: Version 3.2.2 released and repositories moved from SVN to GitLab.

### Related projects

- Lazarus is the most visible adjacent project in the Free Pascal ecosystem.
- Related FPC subprojects and tools include the Free Component Library, RTL, fpdoc, fpcmake, h2pas, pas2js, and target-specific compiler backends.

### Sources

- <https://gitlab.com/freepascal.org/fpc/source>
- <https://www.freepascal.org/>
- <https://www.freepascal.org/develop.var>
- <https://www.freepascal.org/docs-html/current/user/usersu10.html>
- <https://www.freepascal.org/docs.html>
- <https://www.freepascal.org/faq.var>


## Security Notes

broad file, network, media, or database tool signal.

- **Geiger risk:** blue / medium
- broad file, network, media, or database tool signal


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: fpc.cfg, ~/.fpc.cfg, $PPC_CONFIG_PATH/fpc.cfg, /usr/local/etc/fpc.cfg, /etc/fpc.cfg
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** fpc
- **Version Scheme:** 0
- **Revision:** 1
- **Conflicts With:** px
- **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 - fp-compiler - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-compiler from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - compiler dependency package | https://www.freepascal.org/
- Debian apt - fp-compiler-3.2.2 - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-compiler-3.2.2 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - compiler | https://www.freepascal.org/
- Debian apt - fp-docs - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-docs from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - documentation dependency package | https://www.freepascal.org/
- Debian apt - fp-docs-3.2.2 - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-docs-3.2.2 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - documentation | https://www.freepascal.org/
- Debian apt - fp-ide - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-ide from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - IDE dependency package | https://www.freepascal.org/
- Debian apt - fp-ide-3.2.2 - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-ide-3.2.2 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - IDE | https://www.freepascal.org/
- Debian apt - fp-units-base - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-units-base from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - base units dependency package | https://www.freepascal.org/
- Debian apt - fp-units-base-3.2.2 - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-units-base-3.2.2 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - base units | https://www.freepascal.org/
- Debian apt - fp-units-db - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-units-db from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - database-library units dependency package | https://www.freepascal.org/
- Debian apt - fp-units-db-3.2.2 - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-units-db-3.2.2 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - database-library units | https://www.freepascal.org/
- Debian apt - fp-units-fcl - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-units-fcl from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - Free Component Library dependency package | https://www.freepascal.org/
- Debian apt - fp-units-fcl-3.2.2 - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-units-fcl-3.2.2 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - Free Component Library | https://www.freepascal.org/
- Debian apt - fp-units-fv - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-units-fv from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - Free Vision units dependency package | https://www.freepascal.org/
- Debian apt - fp-units-fv-3.2.2 - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-units-fv-3.2.2 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - Free Vision units | https://www.freepascal.org/
- Debian apt - fp-units-gfx - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-units-gfx from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - graphics-library units dependency package | https://www.freepascal.org/
- Debian apt - fp-units-gfx-3.2.2 - 3.2.2+dfsg-46: normalized package name match | Debian stable package indexes: fp-units-gfx-3.2.2 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Free Pascal - graphics-library units | https://www.freepascal.org/


## Related links

- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [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.
- [futhark](https://www.automicvault.com/pkg/brew/futhark/) - Shares av.db curated category or tags: cli, compiler, compilers, language-runtime.
- [gcc](https://www.automicvault.com/pkg/brew/gcc/) - Shares av.db curated category or tags: cli, compiler, compilers, language-runtime.
- [gnucobol](https://www.automicvault.com/pkg/brew/gnucobol/) - Shares av.db curated category or tags: cli, compiler, compilers, language-runtime.
- [ispc](https://www.automicvault.com/pkg/brew/ispc/) - Shares av.db curated category or tags: cli, compiler, compilers, language-runtime.
- [mlkit](https://www.automicvault.com/pkg/brew/mlkit/) - Shares av.db curated category or tags: cli, compiler, compilers, language-runtime.
- [abcl](https://www.automicvault.com/pkg/brew/abcl/) - Shares av.db curated category or tags: cli, compiler, language-runtime.
- [gcl](https://www.automicvault.com/pkg/brew/gcl/) - 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.
- [clisp](https://www.automicvault.com/pkg/brew/clisp/) - Local package facts share a topical domain. Shared terms: cli, compiler, language, language-runtime, runtime.
- [ecl](https://www.automicvault.com/pkg/brew/ecl/) - Local package facts share a topical domain. Shared terms: cli, compiler, language, language-runtime, runtime.
- [intercal](https://www.automicvault.com/pkg/brew/intercal/) - Local package facts share a topical domain. Shared terms: cli, compiler, language, language-runtime, runtime.

## Combined YAML source

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


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- 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
