# 使用 Homebrew, apt, Nix, pacman, dnf 安装 cargo-binutils

查看 cargo-binutils 的安装路径、可执行文件、元数据以及面向 AI 代理工作流的安全说明。

## 安装

```sh
sudo av install brew:cargo-binutils
```

其他安装命令:

### macOS

- Homebrew (100%):

```sh
brew install cargo-binutils
```

  证据: local Homebrew formula metadata

### Linux

- Debian apt (92%):

```sh
sudo apt install cargo-binutils
```

  证据: Debian stable package indexes: cargo-binutils from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- Nix (92%):

```sh
nix profile install nixpkgs#cargo-binutils
```

  证据: nixpkgs package indexes: pkgs/by-name/ca/cargo-binutils/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S cargo-binutils
```

  证据: Arch Linux sync databases: cargo-binutils from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- dnf (92%):

```sh
sudo dnf install rust-ar+default-devel
```

  证据: Fedora Rawhide package metadata: rust-ar+default-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst

## 软件包事实

- **软件包键:** brew:cargo-binutils
- **软件包管理器:** Homebrew
- **版本:** 0.4.0
- **来源摘要:** Cargo subcommands to invoke the LLVM tools shipped with the Rust toolchain
- **主页:** <https://github.com/rust-embedded/cargo-binutils>
- **仓库:** <https://github.com/rust-embedded/cargo-binutils>
- **已生成:** 2026-08-03T19:37:03+00:00

## 可执行文件

- cargo-cov (别名)
- cargo-nm (别名)
- cargo-objcopy (别名)
- cargo-objdump (别名)
- cargo-profdata (别名)
- cargo-readobj (别名)
- cargo-size (别名)
- cargo-strip (别名)
- rust-ar (别名)
- rust-as (别名)
- rust-cov (别名)
- rust-ld (别名)
- rust-lld (别名)
- rust-nm (别名)
- rust-objcopy (别名)
- rust-objdump (别名)
- rust-profdata (别名)
- rust-readobj (别名)
- rust-size (别名)
- rust-strip (别名)

## 安装行为

- Bottle: 不可用

## 版本和新鲜度

- 页面生成时间: 2026-08-03
- 管理器版本: 0.4.0
## 项目历史与用法

cargo-binutils is a Cargo subcommand suite that makes the LLVM binary-inspection tools shipped in Rust toolchains feel like native Cargo workflows. It provides rust-* proxies for LLVM tools and cargo-* commands that can build a Rust target and then inspect the resulting artifact.

### 项目历史

The crate appeared on crates.io in June 2018 as a proxy for llvm-nm, llvm-objdump, llvm-size, and related tools. Early crate metadata pointed at Jorge Aparicio's japaric/cargo-binutils repository, and the project later settled under the rust-embedded organization, where the README says it is maintained by the Embedded Working Group Tools team while also noting that it is not an official Rust project.

Its scope grew from a small set of cargo-nm, cargo-objcopy, cargo-objdump, cargo-profdata, and cargo-size commands into a broader wrapper set that also includes rust-* command proxies such as rust-objcopy, rust-size, rust-readobj, rust-strip, rust-lld, and rust-cov. The current README frames the tool as sugar over LLVM tools from rustup's llvm-tools component.

### 采用历史

cargo-binutils became a standard convenience tool in embedded Rust because it connects Cargo builds with artifact inspection commands that embedded developers already need for symbol tables, section sizes, disassembly, and binary conversion. Its maintenance home in rust-embedded and its packaging across Homebrew, Debian, Ubuntu, Nix, pacman, and Fedora-style package names reflect that it escaped the purely crates.io audience.

Crates.io reports more than 2.7 million total downloads and the current crate metadata classifies it under command-line utilities and development tools. That adoption is reinforced by rustup's llvm-tools component: cargo-binutils does not ship its own LLVM, it makes the toolchain-provided LLVM tools easier to call.

### 使用方式

A typical installation is `cargo install cargo-binutils` followed by `rustup component add llvm-tools`. Users then run commands such as `cargo size --release`, `cargo objdump --release -- --disassemble`, `cargo nm --release`, or the lower-level `rust-size` and `rust-objdump` proxies.

The important usage pattern is build-and-inspect: cargo-binutils can accept familiar Cargo selectors such as `--bin`, `--example`, `--lib`, `--target`, and `--release`, build the requested target, and pass the generated artifact path to the LLVM tool.

### 为什么软件包爱好者会关心

For package nerds, cargo-binutils is interesting because it packages compiler-toolchain internals as stable-feeling Cargo subcommands without vendoring the underlying tools. It sits at the boundary between rustup components, LLVM command naming, Cargo metadata, and distribution packaging.

It is especially notable in embedded packaging culture: size reports, symbol listings, object copying, and disassembly are routine release tasks for firmware, and cargo-binutils made those tasks reproducible from a Rust package-manager workflow.

### 时间线

- 2018-04-06: Current rust-embedded/cargo-binutils GitHub repository was created.
- 2018-06-29: cargo-binutils 0.1.0 was published on crates.io with cargo-nm, cargo-objcopy, cargo-objdump, cargo-profdata, and cargo-size binaries.
- 2018-12-19: The 0.1.6 crate metadata still referenced the earlier japaric/cargo-binutils repository.
- 2020: The 0.2 and 0.3 lines expanded the proxy set with more rust-* and cargo-* LLVM tools.
- 2025-08-26: Version 0.4.0 was published, listing the broader command set including cargo-cov, cargo-readobj, cargo-strip, rust-lld, and rust-as.

### Related projects

- rustup's llvm-tools component supplies the LLVM binaries that cargo-binutils invokes.
- LLVM binutils such as llvm-nm, llvm-objdump, llvm-objcopy, llvm-size, llvm-readobj, and llvm-strip are the underlying tools exposed by the package.
- The rust-embedded working group ecosystem is the cultural home for many of the workflows cargo-binutils targets.

### 来源

- GitHub repository API metadata: https://api.github.com/repos/rust-embedded/cargo-binutils
- Official README: https://github.com/rust-embedded/cargo-binutils#readme
- Package-manager adoption from source_facts.package-manager.
- crates.io API metadata and versions: https://crates.io/api/v1/crates/cargo-binutils


## 安全说明

narrow executable package without higher-risk signals.

- **Geiger 风险:** 绿色 / 低
- narrow executable package without higher-risk signals

## 其他软件包管理器记录

- Debian apt - cargo-binutils - 0.3.6-2+b1: normalized package name match | Debian stable package indexes: cargo-binutils from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Proxy for LLVM tools like llvm-nm, llvm-objdump and llvm-size | https://github.com/rust-embedded/cargo-binutils/
- Nix - cargo-binutils: normalized package name match | nixpkgs package indexes: pkgs/by-name/ca/cargo-binutils/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - cargo-binutils - 0.3.5-3: normalized package name match | Ubuntu 24.04 LTS package indexes: cargo-binutils from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Proxy for LLVM tools like llvm-nm, llvm-objdump and llvm-size
- pacman - cargo-binutils - 0.4.0-1: normalized package name match | Arch Linux sync databases: cargo-binutils from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Cargo subcommands to invoke the LLVM tools shipped with the Rust toolchain | https://github.com/rust-embedded/cargo-binutils
- Debian apt - librust-ar-dev - 0.9.0-1+b2: installed executable or alias match | Debian stable package indexes: librust-ar-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Encoding/decoding Unix archive files - Rust source code
- Ubuntu apt - librust-ar-dev - 0.9.0-1: installed executable or alias match | Ubuntu 24.04 LTS package indexes: librust-ar-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Encoding/decoding Unix archive files - Rust source code
- dnf - rust-ar+default-devel - 0.9.0-7.fc45: installed executable or alias match | Fedora Rawhide package metadata: rust-ar+default-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Library for encoding/decoding Unix archive files | https://crates.io/crates/ar
- dnf - rust-ar-devel - 0.9.0-7.fc45: installed executable or alias match | Fedora Rawhide package metadata: rust-ar-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Library for encoding/decoding Unix archive files | https://crates.io/crates/ar
- dnf - rust-size+default-devel - 0.5.0-4.fc45: installed executable or alias match | Fedora Rawhide package metadata: rust-size+default-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | For expressing, formatting, and interacting with file sizes | https://crates.io/crates/size
- dnf - rust-size+serde-devel - 0.5.0-4.fc45: installed executable or alias match | Fedora Rawhide package metadata: rust-size+serde-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | For expressing, formatting, and interacting with file sizes | https://crates.io/crates/size
- dnf - rust-size+std-devel - 0.5.0-4.fc45: installed executable or alias match | Fedora Rawhide package metadata: rust-size+std-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | For expressing, formatting, and interacting with file sizes | https://crates.io/crates/size
- dnf - rust-size-devel - 0.5.0-4.fc45: installed executable or alias match | Fedora Rawhide package metadata: rust-size-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | For expressing, formatting, and interacting with file sizes | https://crates.io/crates/size


## 相关链接

- [cargo-binutils](https://pkg.so/zh-hans/pkg/cargo/cargo-binutils/) - Same normalized package name exists in another local package ecosystem.

## Combined YAML source

View the package source record on GitHub. [combined/cargo-binutils.yml](https://github.com/mxcl/pkgdb/blob/main/combined/cargo-binutils.yml)


## 来源

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
