Automic VaultAutomic Vault

brew

使用 Homebrew, apk, MacPorts, Nix, zypper, dnf 安装 include-what-you-use

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

安装

其他安装命令

macOS

Homebrew已验证 · 100%
brew install include-what-you-use

local Homebrew formula metadata

MacPorts已验证 · 94%
sudo port install include-what-you-use

MacPorts ports tree · devel/include-what-you-use/Portfile · 来源: api.github.com

Linux

Alpine Linux apk已验证 · 92%
sudo apk add include-what-you-use

Alpine Linux edge package indexes · include-what-you-use · 来源: dl-cdn.alpinelinux.org

Nix已验证 · 92%
nix profile install nixpkgs#include-what-you-use

nixpkgs package indexes · include-what-you-use · 来源: raw.githubusercontent.com

openSUSE zypper已验证 · 92%
sudo zypper install include-what-you-use

openSUSE Tumbleweed package metadata · include-what-you-use · 来源: download.opensuse.org

Fedora dnf已验证 · 92%
sudo dnf install iwyu

Fedora Rawhide package metadata · iwyu · 来源: dl.fedoraproject.org

概览

软件包摘要

Tool to analyze #includes in C and C++ source files

命令和别名

  • fix_includes.py
  • include-what-you-use
  • iwyu_tool.py

历史

项目历史与用法

Include What You Use, often abbreviated IWYU, is a Clang-based C and C++ include analyzer. It tells developers which headers a source file should include directly and which includes can be removed or replaced with forward declarations.

项目历史

The project site announced a very-alpha 0.1 release in February 2011 and described an open-source release-early approach after Google-internal origins. Early releases tracked specific LLVM and Clang versions because IWYU depends heavily on Clang internals.

The release notes show a steady pattern: each IWYU release follows an LLVM/Clang line, updates mappings, and improves analysis of C, C++, templates, standard-library headers, and platform-specific headers. Version 0.5 in December 2015 marked migration to GitHub, updated documentation, improved testing infrastructure, and added Boost and Qt mappings.

采用历史

IWYU spread through C++ build culture because include hygiene directly affects compile time, rebuild fan-out, and refactoring safety. The official documentation explicitly frames the tool around large codebases, where transitive includes make it hard to remove dependencies safely.

Package-manager metadata in this batch lists Homebrew, Alpine, Fedora, MacPorts, Nix, and openSUSE packaging. That is a good fit for a compiler-adjacent developer tool: users install a binary matching their Clang generation and wire it into compilation databases, CMake workflows, CI, or local cleanup scripts.

使用方式

IWYU is usually run against source files with the same compilation information used by Clang. The companion iwyu_tool.py works with compilation databases, and fix_includes.py can apply suggested include edits.

Its output is used during dependency cleanup, code-review preparation, CI checks, and large refactors where accidental reliance on another file's transitive include would otherwise hide missing direct dependencies.

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

For package nerds, IWYU is significant because it turns a style rule into a compiler-backed CLI. It also illustrates a packaging challenge common to LLVM ecosystem tools: the useful binary has to stay aligned with Clang internals and therefore tends to move in lockstep with compiler releases.

It matters beyond neatness. Header dependency cleanup can shorten builds, reduce needless rebuilds, and make C++ packages less fragile when upstream headers change.

时间线

  • 2011: IWYU 0.1 announced as a very-alpha open-source release.
  • 2011: Clang 2.9 and 3.0 compatible tarballs published.
  • 2014: Clang 3.4 and 3.5 compatible releases published; rudimentary C support added in the 3.5-era release.
  • 2015: IWYU 0.5 migrated to GitHub and added Boost and Qt mappings.
  • 2019: Release notes stated that binary releases would no longer be produced and pointed users to maintained packages.
  • 2026: IWYU 0.26 released for LLVM and Clang 22.

Related projects

  • LLVM and Clang are the compiler infrastructure IWYU builds on.
  • fix_includes.py and iwyu_tool.py are companion tools shipped by the project.
  • CMake compilation databases, clang-tidy, and C++ include-order or dependency-cleanup workflows are adjacent developer-tooling surfaces.

安全态势

风险级别:绿色

narrow executable package without higher-risk signals.

风险分类器

绿色 风险 · 低 置信度 · appliance

原因

  • narrow executable package without higher-risk signals

信号

  • metadata:no-higher-risk-signals

安装行为

  • formula 元数据中未记录 Homebrew post-install 钩子。
  • Homebrew bottle 元数据适用于 6 个平台目标。
  • 安装时包含 1 个运行时依赖。
  • 构建元数据列出 1 个构建依赖。

建议审查

在无人值守的代理使用前,请检查该工具是否读取明文凭据、写入远程状态、发布制品或调用插件。

可执行文件

已安装的可执行文件

命令类型暴露范围备注
fix_includes.pycli全局可执行文件
include-what-you-usecli全局可执行文件
iwyu_tool.pycli全局可执行文件

新鲜度

版本和新鲜度

这些信号区分页生成时间、软件包管理器活动和上游发布比较。只有存在证据 URL 和可比较版本时,才会提示版本落后。

页面生成时间2026-07-25
管理器版本0.26
管理器更新时间
本地数据OK
上游not checked
检测到的最新版本未检测到

https://include-what-you-use.org/

  • 信息No package-manager update timestamp was available.低 置信度
  • 信息Release/tag comparison is only available for GitHub repositories.https://include-what-you-use.org/none 置信度

安装元数据

软件包元数据

软件包键brew:include-what-you-use
版本0.26
软件包管理器Homebrew
软件包管理器页面https://formulae.brew.sh/formula/include-what-you-use
主页https://include-what-you-use.org/
仓库https://github.com/include-what-you-use/include-what-you-use
上游文档https://github.com/include-what-you-use/include-what-you-use#readme
许可证NCSA
源码归档https://include-what-you-use.org/downloads/include-what-you-use-0.26.src.tar.gz
依赖llvm
构建依赖cmake
macOS 提供的库ncurses
Bottle可用 (于 arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-install未定义
服务未声明

注册表事实

源数据库详情

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nameinclude-what-you-use
Aliases
  • iwyu
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

源数据库匹配

其他软件包管理器记录

匹配项来自外部软件包管理器索引,并与本地 Automic Vault 软件包链接分开显示。

Nix95%

include-what-you-use

nix profile install nixpkgs#include-what-you-use
  • normalized package name match
  • 匹配方式:Include What You Use
nixpkgs package indexes · raw.githubusercontent.com · nixpkgs package indexes: include-what-you-use from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
apk95%

include-what-you-use 0.26-r0

A tool for use with clang to analyze #includes in C and C++ source files

https://include-what-you-use.org

sudo apk add include-what-you-use
  • License: NCSA
  • Architecture: x86_64
  • Source Package: include-what-you-use
  • 1 依赖
  • 1 提供
  • normalized package name match
  • 匹配方式:Include What You Use
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: include-what-you-use from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

include-what-you-use-dbg 0.26-r0

A tool for use with clang to analyze #includes in C and C++ source files (debug symbols)

https://include-what-you-use.org

sudo apk add include-what-you-use-dbg
  • License: NCSA
  • Architecture: x86_64
  • Source Package: include-what-you-use
  • 1 依赖
  • normalized package name match
  • 匹配方式:Include What You Use
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: include-what-you-use-dbg from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

include-what-you-use-doc 0.26-r0

A tool for use with clang to analyze #includes in C and C++ source files (documentation)

https://include-what-you-use.org

sudo apk add include-what-you-use-doc
  • License: NCSA
  • Architecture: x86_64
  • Source Package: include-what-you-use
  • normalized package name match
  • 匹配方式:Include What You Use
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: include-what-you-use-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
dnf95%

iwyu 0.26-3.fc45

C/C++ source files #include analyzer based on clang

https://github.com/include-what-you-use/include-what-you-use

sudo dnf install iwyu
  • License: NCSA
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: iwyu
  • 6 依赖
  • 2 提供
  • normalized package name match
  • 匹配方式:Include What You Use
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: iwyu from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
zypper95%

include-what-you-use 0.26-1.2

A tool to analyze #includes in C and C++ source files

https://include-what-you-use.org/

sudo zypper install include-what-you-use
  • License: NCSA
  • Category: Development/Languages/C and C++
  • Architecture: x86_64
  • Source Package: include-what-you-use
  • 4 依赖
  • 1 提供
  • normalized package name match
  • 匹配方式:Include What You Use
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: include-what-you-use from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
zypper95%

include-what-you-use-tools 0.26-1.2

Additional tools to use include-what-you-use effectively

https://include-what-you-use.org/

sudo zypper install include-what-you-use-tools
  • License: NCSA
  • Category: Development/Languages/C and C++
  • Architecture: noarch
  • Source Package: include-what-you-use
  • 2 依赖
  • 1 提供
  • normalized package name match
  • 匹配方式:Include What You Use
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: include-what-you-use-tools from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
MacPorts95%

include-what-you-use

sudo port install include-what-you-use
  • normalized package name match
  • 匹配方式:Include What You Use
MacPorts ports tree · api.github.com · MacPorts ports tree: devel/include-what-you-use/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

来源线索

由仓库数据生成

此页面由 av-webscripts/generate-pkg-sqlite.py 生成的私有软件包 SQLite 工件提供。

使用的来源

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