# Install gputils with Homebrew, apt, dnf, MacPorts, Nix, pacman, zypper

GNU PIC Utilities. Version 1.5.2 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:gputils
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install gputils
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install gputils
```

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

### Linux

- Debian apt (92%):

```sh
sudo apt install gputils
```

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

- dnf (92%):

```sh
sudo dnf install gputils
```

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

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

- pacman (92%):

```sh
sudo pacman -S gputils
```

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

- zypper (92%):

```sh
sudo zypper install gputils
```

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

## Package facts

- **Package key:** brew:gputils
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/gputils>
- **Version:** 1.5.2
- **Source summary:** GNU PIC Utilities
- **Homepage:** <https://gputils.sourceforge.io/>
- **Repository:** <https://sourceforge.net/p/gputils/code/HEAD/tree/trunk>
- **Upstream docs:** <https://gputils.sourceforge.io/gputils.pdf>
- **License:** GPL-2.0-or-later
- **Source archive:** <https://downloads.sourceforge.net/project/gputils/gputils/1.5.0/gputils-1.5.2.tar.bz2>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- gpasm (cli)
- gpdasm (cli)
- gplib (cli)
- gplink (cli)
- gpstrip (cli)
- gpvc (cli)
- gpvo (cli)
- gpasm (alias)
- gpdasm (alias)
- gplib (alias)
- gplink (alias)
- gpstrip (alias)
- gpvc (alias)
- gpvo (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: 1.5.2
- Local data: ok
- Upstream repository: https://gputils.sourceforge.io/
- info: No package-manager update timestamp was available.
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

gputils, the GNU PIC Utilities, is a collection of command-line development tools for Microchip PIC microcontrollers. Its core programs include the gpasm assembler, gplink linker, and gplib librarian.

### Project history

The project grew out of gpasm, a GNU-style assembler for Microchip PIC devices. The official news archive records the gputils package being created on 2001-12-12 so gpasm, a new linker, and a library tool could be distributed together as GNU PIC Utilities.

gputils was created by Craig Franklin and James Bowman. The project page credits later support to Molnar Karoly, Borut Razem, David Barnett, Scott Dattalo, and Marko Kohtala.

The long release trail shows the package steadily chasing compatibility with Microchip's MPASM, MPLINK, and MPLIB tools: processor definition updates, COFF support, linker scripts, object-file work, MPLAB and MPLAB X synchronization, and bug fixes across PIC device families.

### Adoption history

gputils became a standard open-source PIC toolchain component because it provided Unix-friendly assembler, linker, librarian, disassembler, object viewer, and COD viewer tools for a microcontroller family historically served by vendor tools.

The official site lists ports or packages for many systems, including ALT Linux, Arch Linux, Debian, Fedora, FreeBSD, Gentoo, Homebrew, NetBSD, OpenBSD, openSUSE, Slackware, Void Linux, and Ubuntu. That broad distro presence is a strong signal of long-term package-manager adoption.

Microchip test files also shaped the project: the official site says Microchip provided MPASM test files, which the project reformatted and used for compatibility testing.

### How it is used

Typical use is embedded build work: assemble PIC assembly with gpasm, link objects with gplink, manage libraries with gplib, inspect or disassemble artifacts with gpvo, gpvc, gpdasm, gpstrip, and related tools.

The package is especially useful in makefile-driven or cross-platform embedded workflows where a free command-line PIC assembler is easier to automate than a vendor IDE.

### Why package nerds care

gputils is the sort of package that explains why distro archives matter: it keeps older embedded hardware workflows reproducible even when vendor toolchains, IDEs, and supported host platforms move on.

The package also illustrates compatibility-as-maintenance. Much of its history is not flashy feature work but keeping device headers, linker scripts, object formats, diagnostics, and test behavior aligned enough with Microchip tooling for old projects to keep building.

### Timeline

- 2001-03-04: gpasm 0.9.2 improves compatibility with Microchip MPASM test files.
- 2001-12-12: gputils package is created around gpasm, a new linker, and a library tool.
- 2002-01-13: gputils is imported to CVS.
- 2002-01-20: gputils 0.10.0 is released.
- 2003-03-14: gputils 0.11.0 adds initial relocatable object support.
- 2004-11-14: preliminary MPLAB plugin release is announced.
- 2012-12-31: gputils 1.0.0 is released.
- 2016-08-21: gputils 1.5.0 is released with gpasm and gplink changes and MPLAB X synchronization.
- 2022-01-30: gputils 1.5.2 is released with gplink features, PIC16F184XX support, and bug fixes.

### Related projects

- gpsim is named by the official site as a gputils-compatible simulator.
- Microchip MPASM, MPLINK, and MPLIB are the vendor tools that gputils aims to be compatible with.
- The gputils MPLAB plugin connects the command-line tools to Microchip's older Windows IDE workflow.

### Sources

- <https://gputils.sourceforge.io/>
- <https://gputils.sourceforge.io/gputils.pdf>
- <https://gputils.sourceforge.io/previous.html>
- <https://sourceforge.net/p/gputils/code/HEAD/tree/trunk>
- <https://sourceforge.net/p/gputils/wiki/Home/>


## 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:** gputils
- **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 - gputils - 1.5.2-1: normalized package name match | Debian stable package indexes: gputils from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | GNU PIC utilities | https://gputils.sourceforge.net
- Debian apt - gputils-common - 1.5.2-1: normalized package name match | Debian stable package indexes: gputils-common from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | headers and linker scripts for gputils | https://gputils.sourceforge.net
- Debian apt - gputils-doc - 1.5.2-1: normalized package name match | Debian stable package indexes: gputils-doc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | documentation for gputils | https://gputils.sourceforge.net
- Nix - gputils: normalized package name match | nixpkgs package indexes: pkgs/by-name/gp/gputils/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - gputils - 1.4.0-0.2: normalized package name match | Ubuntu 24.04 LTS package indexes: gputils from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | GNU PIC utilities | http://gputils.sourceforge.net
- Ubuntu apt - gputils-common - 1.4.0-0.2: normalized package name match | Ubuntu 24.04 LTS package indexes: gputils-common from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | headers and linker scripts for gputils | http://gputils.sourceforge.net
- Ubuntu apt - gputils-doc - 1.4.0-0.2: normalized package name match | Ubuntu 24.04 LTS package indexes: gputils-doc from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | documentation for gputils | http://gputils.sourceforge.net
- dnf - gputils - 1.5.2-10.fc44: normalized package name match | Fedora Rawhide package metadata: gputils from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Development utilities for Microchip (TM) PIC (TM) microcontrollers | http://gputils.sourceforge.net
- dnf - gputils-doc - 1.5.2-10.fc44: normalized package name match | Fedora Rawhide package metadata: gputils-doc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Gputils documentation | http://gputils.sourceforge.net
- pacman - gputils - 1.5.2-2: normalized package name match | Arch Linux sync databases: gputils from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | PIC Programming Utilities | http://gputils.sourceforge.net/
- zypper - gputils - 1.5.2-3.3: normalized package name match | openSUSE Tumbleweed package metadata: gputils from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Development utilities for Microchip PIC microcontrollers | http://gputils.sourceforge.net
- zypper - gputils-doc - 1.5.2-3.3: normalized package name match | openSUSE Tumbleweed package metadata: gputils-doc from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Documentation files for PIC MCUs | http://gputils.sourceforge.net
- MacPorts - gputils: normalized package name match | MacPorts ports tree: devel/gputils/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [sdcc](https://www.automicvault.com/pkg/brew/sdcc/) - Popular package that depends on this formula.
- [gpsim](https://www.automicvault.com/pkg/brew/gpsim/) - Shares av.db curated category or tags: cli, developer-tools, embedded, microcontroller, pic.
- [vc4asm](https://www.automicvault.com/pkg/brew/vc4asm/) - Shares av.db curated category or tags: assembler, cli, developer-tools, embedded.
- [bossa](https://www.automicvault.com/pkg/brew/bossa/) - Shares av.db curated category or tags: cli, developer-tools, embedded, microcontroller.
- [lpc21isp](https://www.automicvault.com/pkg/brew/lpc21isp/) - Shares av.db curated category or tags: cli, developer-tools, embedded, microcontroller.
- [teensy_loader_cli](https://www.automicvault.com/pkg/brew/teensy-loader-cli/) - Shares av.db curated category or tags: cli, developer-tools, embedded, microcontroller.
- [acme](https://www.automicvault.com/pkg/brew/acme/) - Shares av.db curated category or tags: assembler, cli, developer-tools.
- [asm6809](https://www.automicvault.com/pkg/brew/asm6809/) - Shares av.db curated category or tags: assembler, cli, developer-tools.
- [dasm](https://www.automicvault.com/pkg/brew/dasm/) - Shares av.db curated category or tags: assembler, cli, developer-tools.
- [jasmin](https://www.automicvault.com/pkg/brew/jasmin/) - Local package facts share a topical domain. Shared terms: assembler, cli, developer, developer-tools.

## Combined YAML source

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