# Install castxml with Homebrew, apt, dnf, MacPorts, Nix, pacman, scoop, zypper

C-family Abstract Syntax Tree XML Output. Version 0.7.0 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:castxml
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install castxml
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install castxml
```

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

### Linux

- Debian apt (92%):

```sh
sudo apt install castxml
```

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

- dnf (92%):

```sh
sudo dnf install castxml
```

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

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

- pacman (92%):

```sh
sudo pacman -S castxml
```

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

- zypper (92%):

```sh
sudo zypper install CastXML-devel
```

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

### Windows

- Scoop (92%):

```sh
scoop install main/castxml
```

  Evidence: Scoop official bucket manifest trees: bucket/castxml.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:castxml
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/castxml>
- **Version:** 0.7.0
- **Source summary:** C-family Abstract Syntax Tree XML Output
- **Homepage:** <https://github.com/CastXML/CastXML>
- **Repository:** <https://github.com/CastXML/CastXML>
- **Upstream docs:** <https://github.com/CastXML/CastXML#readme>
- **License:** Apache-2.0
- **Source archive:** <https://github.com/CastXML/CastXML/archive/refs/tags/v0.7.0.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- castxml (cli)
- castxml (alias)

## Dependencies

- llvm

## Build dependencies

- cmake

## 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: 0.7.0
- Local data: ok
- Upstream repository: https://github.com/CastXML/CastXML
- Upstream latest detected: v0.7.0 (current)
- info: No package-manager update timestamp was available.
## Project history and usage

CastXML is a developer tool that parses C-family source files and writes a subset of the abstract syntax tree as XML. The upstream README describes it as maintained by Kitware in support of ITK, the Insight Segmentation and Registration Toolkit.

### Project history

The project is built around LLVM/Clang: its manual says source files are parsed as complete translation units by an internal Clang compiler. It also includes a --castxml-gccxml mode that emits XML close to GCC-XML, making it important for code-generation and binding workflows that previously expected GCC-XML-style output.

### Adoption history

The supplied package facts show CastXML distributed across Homebrew, Debian, Fedora, MacPorts, Nix, Arch, Scoop, Ubuntu, and openSUSE. That breadth matches its niche but durable role as infrastructure for C/C++ introspection workflows rather than an end-user command.

### How it is used

Typical use is command-line AST extraction: pass source files, Clang options, and CastXML options, then request XML output with --castxml-output or GCC-XML-compatible output with --castxml-gccxml. The manual also documents compiler-target matching with --castxml-cc-* options.

### Why package nerds care

CastXML is package-nerd significant because it packages compiler-internal structure as a stable CLI artifact. It lets downstream tools depend on a packaged executable instead of embedding all of Clang's C++ APIs or reviving GCC-XML.

### Timeline

- 2026: The README lists support for LLVM/Clang releases through 22.1 and git master as of 2026-06-10.
- 2026: Homebrew formula packages v0.7.0 from the official release archive.

### Related projects

- Related projects and technologies include LLVM/Clang, GCC-XML, CMake, and ITK; the README explicitly ties CastXML maintenance to Kitware's support of ITK.

### Sources

- <https://api.github.com/repos/CastXML/CastXML>
- <https://github.com/CastXML/CastXML>
- <https://github.com/CastXML/CastXML/blob/master/doc/manual/castxml.1.rst>
- <https://github.com/CastXML/CastXML#readme>
- <https://formulae.brew.sh/api/formula/castxml.json>
- <https://github.com/CastXML/CastXML/releases>


## 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:** castxml
- **Version Scheme:** 0
- **Revision:** 1
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Debian apt - castxml - 0.6.11-1: normalized package name match | Debian stable package indexes: castxml from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | C-family abstract syntax tree XML output tool | https://github.com/CastXML/CastXML
- Nix - castxml: normalized package name match | nixpkgs package indexes: pkgs/by-name/ca/castxml/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - castxml - 0.6.3-1build2: normalized package name match | Ubuntu 24.04 LTS package indexes: castxml from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | C-family abstract syntax tree XML output tool | https://github.com/CastXML/CastXML
- dnf - castxml - 0.7.0-1.fc45: normalized package name match | Fedora Rawhide package metadata: castxml from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | C-family abstract syntax tree XML output tool | https://github.com/CastXML/CastXML
- pacman - castxml - 0.7.0-2: normalized package name match | Arch Linux sync databases: castxml from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | C-family abstract syntax tree XML output tool | https://github.com/CastXML/CastXML
- zypper - CastXML-devel - 0.7.0-1.4: normalized package name match | openSUSE Tumbleweed package metadata: CastXML-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | C-family Abstract Syntax Tree XML Output | https://github.com/CastXML/CastXML
- MacPorts - castxml: normalized package name match | MacPorts ports tree: lang/castxml/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Scoop - main/castxml: normalized package name match | Scoop official bucket manifest trees: bucket/castxml.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [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.
- [llvm](https://www.automicvault.com/pkg/brew/llvm/) - Runtime dependency declared by Homebrew.
- [cmake](https://www.automicvault.com/pkg/brew/cmake/) - Build dependency declared by Homebrew.
- [include-what-you-use](https://www.automicvault.com/pkg/brew/include-what-you-use/) - Shares av.db curated category or tags: c, clang, cli, code-analysis, developer-tools.
- [rnv](https://www.automicvault.com/pkg/brew/rnv/) - Shares av.db curated category or tags: c, cli, developer-tools, xml.
- [ccache](https://www.automicvault.com/pkg/brew/ccache/) - Shares av.db curated category or tags: c, c-plus-plus, clang, cli, developer-tools.
- [ccheck](https://www.automicvault.com/pkg/brew/ccheck/) - Shares av.db curated category or tags: c, cli, code-analysis, developer-tools.
- [clang-include-graph](https://www.automicvault.com/pkg/brew/clang-include-graph/) - Shares av.db curated category or tags: clang, cli, code-analysis, developer-tools.
- [clang-uml](https://www.automicvault.com/pkg/brew/clang-uml/) - Shares av.db curated category or tags: clang, cli, code-analysis, developer-tools.
- [cppinsights](https://www.automicvault.com/pkg/brew/cppinsights/) - Shares av.db curated category or tags: c-plus-plus, cli, code-analysis, developer-tools.
- [expat](https://www.automicvault.com/pkg/brew/expat/) - Shares av.db curated category or tags: cli, developer-tools, xml.
- [rtags](https://www.automicvault.com/pkg/brew/rtags/) - Local package facts share a topical domain. Shared terms: c-plus-plus, clang, cli, code, developer.

## Combined YAML source

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