# Install arm-none-eabi-binutils with Homebrew, dnf, MacPorts, pacman

GNU Binutils for arm-none-eabi cross development. Version 2.46.1 via Homebrew; verified 2026-06-09.

## Install

```sh
sudo av install brew:arm-none-eabi-binutils
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install arm-none-eabi-binutils
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install arm-none-eabi-binutils
```

  Evidence: MacPorts ports tree: cross/arm-none-eabi-binutils/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- dnf (92%):

```sh
sudo dnf install arm-none-eabi-binutils-cs
```

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

- pacman (92%):

```sh
sudo pacman -S arm-none-eabi-binutils
```

  Evidence: Arch Linux sync databases: arm-none-eabi-binutils from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

## Package facts

- **Package key:** brew:arm-none-eabi-binutils
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/arm-none-eabi-binutils>
- **Version:** 2.46.1
- **Source summary:** GNU Binutils for arm-none-eabi cross development
- **Homepage:** <https://www.gnu.org/software/binutils/>
- **Repository:** <https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git>
- **Upstream docs:** <https://sourceware.org/binutils/docs>
- **License:** GPL-3.0-or-later
- **Source archive:** <https://ftpmirror.gnu.org/gnu/binutils/binutils-2.46.1.tar.bz2>
- **Last updated:** 2026-06-09T23:41:43Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- arm-none-eabi-addr2line (cli)
- arm-none-eabi-ar (cli)
- arm-none-eabi-as (cli)
- arm-none-eabi-c++filt (cli)
- arm-none-eabi-elfedit (cli)
- arm-none-eabi-gprof (cli)
- arm-none-eabi-ld (cli)
- arm-none-eabi-ld.bfd (cli)
- arm-none-eabi-nm (cli)
- arm-none-eabi-objcopy (cli)
- arm-none-eabi-objdump (cli)
- arm-none-eabi-ranlib (cli)
- arm-none-eabi-readelf (cli)
- arm-none-eabi-size (cli)
- arm-none-eabi-strings (cli)
- arm-none-eabi-strip (cli)
- arm-none-eabi-addr2line (alias)
- arm-none-eabi-ar (alias)
- arm-none-eabi-as (alias)
- arm-none-eabi-c++filt (alias)
- arm-none-eabi-elfedit (alias)
- arm-none-eabi-gprof (alias)
- arm-none-eabi-ld (alias)
- arm-none-eabi-ld.bfd (alias)
- arm-none-eabi-nm (alias)
- arm-none-eabi-objcopy (alias)
- arm-none-eabi-objdump (alias)
- arm-none-eabi-ranlib (alias)
- arm-none-eabi-readelf (alias)
- arm-none-eabi-size (alias)
- arm-none-eabi-strings (alias)
- arm-none-eabi-strip (alias)

## Dependencies

- zstd

## Build dependencies

- pkgconf
- texinfo

## 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: 2.46.1
- Package-manager updated: 2026-06-09
- Local data: ok
- Upstream repository: https://www.gnu.org/software/binutils/
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

arm-none-eabi-binutils is the target-prefixed GNU Binutils package for bare-metal ARM EABI development. It provides the low-level assembler, linker, archiver, object-copy, object-dump, symbol, size, string, strip, and ELF-inspection tools used before or alongside a matching arm-none-eabi GCC.

### Project history

The upstream project is GNU Binutils, maintained through Sourceware's binutils-gdb.git repository. The official documentation is generated from the Binutils sources and covers the binary utilities, GNU assembler, GNU linker, BFD, profiling tools, and support libraries.

The arm-none-eabi prefix is packaging and target selection rather than a fork. It tells build systems and compiler drivers that these tools target ARM with no hosted operating system and the Embedded ABI, a common setup for microcontrollers, firmware, bootloaders, and freestanding runtime work.

### Adoption history

The supplied package facts show arm-none-eabi-binutils packaged in Homebrew, Fedora-derived packaging, MacPorts, and Arch. That spread reflects the embedded-development pattern: host systems need cross tools that do not replace native /usr/bin ar, as, ld, objcopy, objdump, or strip.

Because bare-metal ARM development often needs objcopy to create raw binaries or S-records, objdump/readelf for inspection, and linker scripts for memory layout, Binutils is often installed even before the full compiler and C library story is settled.

### How it is used

The package installs commands such as arm-none-eabi-as, arm-none-eabi-ld, arm-none-eabi-objcopy, arm-none-eabi-objdump, arm-none-eabi-readelf, and arm-none-eabi-strip. Users call them directly in firmware build scripts or indirectly through arm-none-eabi-gcc.

Official Binutils documentation describes objcopy as able to translate object-file formats and generate raw binary output, objdump as an object-file inspection tool, gas as a family of assemblers, and ld as the linker that combines object and archive files. Those are exactly the jobs that make the package central to embedded packaging.

### Why package nerds care

This is one of the canonical cross-toolchain packages: small, target-prefixed, and boring in the right way. It makes build-system discovery deterministic and keeps host and target binary tools separate.

For package nerds, arm-none-eabi-binutils is the layer that reveals how much embedded build output is not just compilation. Firmware packaging depends on linker scripts, section placement, ELF metadata, stripped images, raw binary conversion, and post-link inspection.

### Timeline

- 1991-2026: Current Sourceware manuals for gas and ld carry Free Software Foundation copyright ranges beginning in 1991.
- 2026: Sourceware publishes documentation for Binutils 2.46.
- 2026: Sourceware git tags include official GNU Binutils 2.46 and 2.46.1 releases.
- Current: Homebrew, MacPorts, Arch, and Fedora-family package metadata include arm-none-eabi-binutils variants.

### Related projects

- Related projects include arm-none-eabi-gcc, newlib or other embedded C libraries, GDB, OpenOCD, CMSIS-based firmware projects, and build systems that consume target-prefixed toolchains.
- It is a sibling of arm-linux-gnueabihf-binutils, but aims at bare-metal EABI rather than GNU/Linux hard-float userland.

### Sources

- <https://sourceware.org/binutils/docs>
- <https://sourceware.org/binutils/docs/as.html>
- <https://sourceware.org/binutils/docs/binutils.html>
- <https://sourceware.org/binutils/docs/ld.html>
- <https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=summary>
- input.source_facts.executables
- input.source_facts.package-manager


## 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:** arm-none-eabi-binutils
- **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

- dnf - arm-none-eabi-binutils-cs - 2.45-3.fc44: normalized package name match | Fedora Rawhide package metadata: arm-none-eabi-binutils-cs from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | GNU Binutils for cross-compilation for arm-none-eabi target | http://www.codesourcery.com/sgpp/lite/arm
- pacman - arm-none-eabi-binutils - 2.43-2: normalized package name match | Arch Linux sync databases: arm-none-eabi-binutils from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | A set of programs to assemble and manipulate binary and object files for the ARM EABI (bare-metal) target | https://www.gnu.org/software/binutils/
- MacPorts - arm-none-eabi-binutils: normalized package name match | MacPorts ports tree: cross/arm-none-eabi-binutils/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.
- [zstd](https://www.automicvault.com/pkg/brew/zstd/) - Runtime dependency declared by Homebrew.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [texinfo](https://www.automicvault.com/pkg/brew/texinfo/) - Build dependency declared by Homebrew.
- [arm-none-eabi-gcc](https://www.automicvault.com/pkg/brew/arm-none-eabi-gcc/) - Popular package that depends on this formula.
- [aarch64-elf-binutils](https://www.automicvault.com/pkg/brew/aarch64-elf-binutils/) - Shares the same upstream homepage.
- [i686-elf-binutils](https://www.automicvault.com/pkg/brew/i686-elf-binutils/) - Shares the same upstream homepage.
- [m68k-elf-binutils](https://www.automicvault.com/pkg/brew/m68k-elf-binutils/) - Shares the same upstream homepage.
- [mips-linux-gnu-binutils](https://www.automicvault.com/pkg/brew/mips-linux-gnu-binutils/) - Shares the same upstream homepage.
- [mipsel-linux-gnu-binutils](https://www.automicvault.com/pkg/brew/mipsel-linux-gnu-binutils/) - Shares the same upstream homepage.
- [arm-linux-gnueabihf-binutils](https://www.automicvault.com/pkg/brew/arm-linux-gnueabihf-binutils/) - Shares av.db curated category or tags: arm, binutils, cli, compilers, cross-compilation.
- [i686-elf-gcc](https://www.automicvault.com/pkg/brew/i686-elf-gcc/) - Shares av.db curated category or tags: cli, compilers, cross-compilation, developer-tools, gnu.
- [m68k-elf-gcc](https://www.automicvault.com/pkg/brew/m68k-elf-gcc/) - Shares av.db curated category or tags: cli, compilers, cross-compilation, developer-tools, gnu.
- [aarch64-elf-gcc](https://www.automicvault.com/pkg/brew/aarch64-elf-gcc/) - Shares av.db curated category or tags: cli, compilers, cross-compilation, developer-tools.
- [dtc](https://www.automicvault.com/pkg/brew/dtc/) - Shares av.db curated category or tags: cli, compilers, developer-tools, embedded.
- [mingw-w64](https://www.automicvault.com/pkg/brew/mingw-w64/) - Shares av.db curated category or tags: cli, compilers, cross-compilation, developer-tools.
- [x86_64-elf-gcc](https://www.automicvault.com/pkg/brew/x86-64-elf-gcc/) - Shares av.db curated category or tags: cli, compilers, cross-compilation, developer-tools.

## Combined YAML source

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