Automic VaultAutomic Vault

brew

Install x86_64-elf-binutils with Homebrew

GNU Binutils for x86_64-elf cross development. Version 2.46.1 via Homebrew; verified 2026-06-09.

install

Additional install commands

macOS

Homebrewverified ยท 100%
brew install x86_64-elf-binutils

local Homebrew formula metadata

overview

Package summary

GNU Binutils for x86_64-elf cross development

Commands and aliases

  • x86_64-elf-addr2line
  • x86_64-elf-ar
  • x86_64-elf-as
  • x86_64-elf-c++filt
  • x86_64-elf-elfedit
  • x86_64-elf-gprof
  • x86_64-elf-ld
  • x86_64-elf-ld.bfd
  • x86_64-elf-nm
  • x86_64-elf-objcopy
  • x86_64-elf-objdump
  • x86_64-elf-ranlib
  • x86_64-elf-readelf
  • x86_64-elf-size
  • x86_64-elf-strings
  • x86_64-elf-strip

history

Project history and usage

x86_64-elf-binutils is the GNU Binutils suite built for the `x86_64-elf` target, a bare-metal ELF toolchain target used for operating-system development, kernels, bootloaders, freestanding programs, and other environments that should not inherit the host operating system's ABI or libraries.

The upstream GNU Binutils project supplies the assembler, linker, object-file utilities, and shared binary-format libraries. The `x86_64-elf` package role is to expose those tools with a target prefix, so commands such as `x86_64-elf-as`, `x86_64-elf-ld`, `x86_64-elf-objdump`, and `x86_64-elf-readelf` operate as part of a cross-development toolchain.

Project history

GNU Binutils is one of the oldest layers of the GNU toolchain. The GNU page describes it as a collection of binary tools whose main programs are `ld`, the GNU linker, `as`, the GNU assembler, and `gold`, with supporting tools such as `ar`, `nm`, `objcopy`, `objdump`, `readelf`, `size`, `strings`, and `strip`.

Historically the suite grew around shared binary-format infrastructure. The GNU page notes that most of the programs use BFD, the Binary File Descriptor library, for low-level manipulation of different object formats, and many also use the opcodes library for assembling and disassembling machine instructions. That architecture is why one source project can support many CPU, object-format, and OS targets.

Adoption history

The normal native GNU toolchain pairs Binutils with GCC, GDB, make, and libc to build software for the host. Cross-toolchain users instead configure Binutils with a target such as `x86_64-elf`, producing prefixed tools that generate ELF objects and binaries for a target environment independent of the host OS.

OSDev's cross-compiler guide explains the reason for this pattern: a host compiler assumes the host CPU, operating system, executable format, headers, and libraries unless directed otherwise, while a cross-compiler uses an explicit target and avoids accidental host assumptions. Binutils is built first because GCC needs the target assembler and linker.

How it is used

In a freestanding x86-64 workflow, `x86_64-elf-as` assembles startup or interrupt code, `x86_64-elf-ld` links objects with a custom linker script, `x86_64-elf-objcopy` converts or extracts binary images, and `x86_64-elf-objdump` or `x86_64-elf-readelf` inspects ELF sections, relocations, symbols, and disassembly.

Package users often install x86_64-elf-binutils alongside `x86_64-elf-gcc`. The useful bit is the prefix: build scripts can call target-specific tools directly and avoid accidentally invoking `/usr/bin/as` or the platform linker, which may default to Mach-O, PE, Linux user-space ELF, or another host-specific environment.

Why package nerds care

This package is significant because it turns GNU Binutils from a native developer utility into a precise cross-toolchain component. For OS development and bare-metal experiments, the absence of host assumptions is the feature.

The `x86_64-elf` target also captures a long-running package-manager convenience: many OSDev tutorials show users how to build Binutils by hand, but a packaged cross Binutils gives them the target-prefixed assembler, linker, and inspection tools without owning that bootstrap step.

Timeline

  • 1980s-1990s: GNU assembler, linker, BFD, and related binary utilities mature as core parts of the GNU build toolchain.
  • 1999: The GNU Binutils page notes older `gas2` and `bfd` lists were historical discussion lists until May 1999, reflecting project consolidation under current mailing lists.
  • 2000s: OS-development communities standardize on target-prefixed GNU Binutils and GCC cross toolchains such as `i686-elf` and `x86_64-elf`.
  • 2020s: The GNU Binutils project continues regular releases from Sourceware and GNU mirrors, with current documentation covering Binutils 2.46-era tools.
  • 2026: GNU's Binutils page lists 2.46.1 as the latest release and documents the Sourceware `binutils-gdb.git` development tree.

Related projects

  • GCC is the compiler suite commonly paired with Binutils in both native and cross toolchains.
  • GDB shares the Sourceware `binutils-gdb.git` repository history and is often built for the same target family.
  • OSDev tutorials commonly use Binutils and GCC as the first toolchain pieces for hobby operating-system development.
  • LLVM tools such as `llvm-objdump` and `lld` are related alternatives in some cross and bare-metal workflows.

security posture

No protected-tool coverage found yet

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

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 1 runtime dependencies.
  • Build metadata lists 2 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
x86_64-elf-addr2linecliglobal executable
x86_64-elf-arcliglobal executable
x86_64-elf-ascliglobal executable
x86_64-elf-c++filtcliglobal executable
x86_64-elf-elfeditcliglobal executable
x86_64-elf-gprofcliglobal executable
x86_64-elf-ldcliglobal executable
x86_64-elf-ld.bfdcliglobal executable
x86_64-elf-nmcliglobal executable
x86_64-elf-objcopycliglobal executable
x86_64-elf-objdumpcliglobal executable
x86_64-elf-ranlibcliglobal executable
x86_64-elf-readelfcliglobal executable
x86_64-elf-sizecliglobal executable
x86_64-elf-stringscliglobal executable
x86_64-elf-stripcliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version2.46.1
manager updated2026-06-09
local dataok
upstreamnot checked
latest detectednot detected

https://www.gnu.org/software/binutils/

install metadata

Package metadata

Package keybrew:x86_64-elf-binutils
Version2.46.1
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/x86_64-elf-binutils
Homepagehttps://www.gnu.org/software/binutils/
Repositoryhttps://sourceware.org/git/binutils-gdb.git
Upstream docshttps://sourceware.org/binutils/docs
LicenseGPL-3.0-or-later
Source archivehttps://ftpmirror.gnu.org/gnu/binutils/binutils-2.46.1.tar.bz2
Last updated2026-06-09T23:41:44Z
Pulseupdated
Dependencieszstd
Build dependenciespkgconf, texinfo
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namex86_64-elf-binutils
Version Scheme0
Revision0
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • stable

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • package relationship graph
  • package version freshness
  • package-page enrichment