# Install cmake with Homebrew, apk, chocolatey, apt, dnf, MacPorts, Nix, pacman, scoop, winget, zypper

Cross-platform make. Version 4.3.4 via Homebrew; verified 2026-06-19.

## Install

```sh
sudo av install brew:cmake
```

## Agent safety answer

cmake configures native builds and can run project-defined build commands.

- **Credential access:** Reads environment variables, toolchain files, and project config.
- **Remote mutation:** Usually local, but custom commands can call external services.
- **Publish/artifact risk:** Can produce native release artifacts and installer packages.
- **Recommended control:** Gate install/package targets and custom commands that use secrets.
- **Agent-use guidance:** Allow configure/build in scanned worktrees; require approval for install, package, and secret-backed custom targets.

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install cmake
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install cmake
```

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

### Linux

- apk (92%):

```sh
sudo apk add ccmake
```

  Evidence: Alpine Linux edge package indexes: ccmake from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz

- Debian apt (92%):

```sh
sudo apt install cmake
```

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

- dnf (92%):

```sh
sudo dnf install cmake
```

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

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

- pacman (92%):

```sh
sudo pacman -S cmake
```

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

- zypper (92%):

```sh
sudo zypper install cmake
```

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

### Windows

- Chocolatey (92%):

```sh
choco install cmake
```

  Evidence: Chocolatey community package catalog: cmake from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','chocolatey-preinstaller-checks.extension'

- Scoop (92%):

```sh
scoop install main/cmake
```

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

- winget (92%):

```sh
winget install --id Kitware.CMake -e
```

  Evidence: Windows Package Manager source index: Kitware.CMake from https://cdn.winget.microsoft.com/cache/source.msix

## Package facts

- **Package key:** brew:cmake
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/cmake>
- **Version:** 4.3.4
- **Source summary:** Cross-platform make
- **Homepage:** <https://www.cmake.org/>
- **Repository:** <https://github.com/Kitware/CMake>
- **Upstream docs:** <https://cmake.org/cmake/help/latest>
- **License:** BSD-3-Clause
- **Source archive:** <https://github.com/Kitware/CMake/releases/download/v4.3.4/cmake-4.3.4.tar.gz>
- **Last updated:** 2026-06-19T11:55:27Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- ccmake (cli)
- cmake (cli)
- cpack (cli)
- ctest (cli)
- ccmake (alias)
- cmake (alias)
- cpack (alias)
- ctest (alias)

## Uses from macOS

- ncurses

## Install behavior

- Post-install hook: not defined
- Caveats: To install the CMake documentation, run: brew install cmake-docs
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sequoia, sonoma, tahoe, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 4.3.4
- Package-manager updated: 2026-06-19
- Local data: ok
- Upstream repository: https://github.com/Kitware/CMake
- info: No cached GitHub release or tag data was available.
## Project history and usage

CMake is Kitware's cross-platform build, test, and package tooling family. It began as infrastructure for large portable C++ scientific software and became the de facto build-system interface for much of the C and C++ open source ecosystem.

### Project history

The official CMake history says CMake was created in 2000 for the National Library of Medicine's Insight Toolkit, after Bill Hoffman concluded that a new portable C++ build tool was needed. The early design goals were native build-tool support, one input file across platforms, bootstrap portability with only a C++ compiler, and code-generator support.

### Adoption history

CMake moved from ITK into VTK and ParaView in 2002, then into major open source projects over time. The official timeline highlights KDE switching in 2006, LLVM removing autoconf in favor of CMake in 2016, Visual Studio adding integrated CMake project support in 2017, and Qt switching to CMake in 2019. The CMake about page claims more than two million downloads per month, and the batch input lists packages across Homebrew, Debian, Fedora, Arch, Nix, MacPorts, Windows package managers, and more.

### How it is used

The cmake executable generates project buildsystems, builds and installs projects, runs scripts, runs command-line helper actions, and exposes help. CMake projects begin from CMakeLists.txt files; modern workflows may also use CMakePresets.json and CMakeUserPresets.json, while generated build trees contain CMakeCache.txt.

### Why package nerds care

CMake is package-nerd infrastructure: it is the build-system front door for thousands of upstream projects and distro recipes. Its generator model lets package maintainers target Make, Ninja, IDE projects, and platform-native tooling from the same upstream metadata, while CTest and CPack standardize test and packaging hooks.

### Timeline

- 2000: CMake is created for the National Library of Medicine's Insight Toolkit project.
- 2002: VTK and ParaView replace their build systems with CMake.
- 2006: KDE switches to CMake, helping drive Linux distribution availability.
- 2011: Ninja generator is added to CMake.
- 2016: LLVM switches to CMake and removes autoconf.
- 2017: Microsoft Visual Studio introduces integrated support for CMake projects.
- 2019: The Qt Group switches to CMake.
- 2020: CMake Presets are incorporated into Visual Studio and Ninja Multi-Config is added.
- 2022: CMake is publicly described as the standard build system in a C++Now talk cited by the official timeline.

### Related projects

- The official timeline ties CMake to ITK, VTK, ParaView, KDE, LLVM, Visual Studio, Qt, Ninja, CTest, CPack, and C++20 modules work. It is also the build dependency for projects such as cmark.

### Sources

- <https://cmake.org/history/>
- <https://cmake.org/about/>
- <https://cmake.org/cmake/help/latest/manual/cmake.1.html>
- <https://cmake.org/cmake/help/latest/manual/cmake-presets.7.html>


## Security Notes

build system capable of executing project logic.

- **Geiger risk:** yellow / high
- build system capable of executing project logic
- **Approval gate rules:** 6


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: CMakePresets.json, CMakeUserPresets.json, <build-tree>/CMakeCache.txt
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** cmake
- **Version Scheme:** 0
- **Revision:** 0
- **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 - cmake - 3.31.6-2: normalized package name match | Debian stable package indexes: cmake from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | cross-platform, open-source make system | https://cmake.org/
- Debian apt - cmake-curses-gui - 3.31.6-2: normalized package name match | Debian stable package indexes: cmake-curses-gui from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | curses based user interface for CMake (ccmake) | https://cmake.org/
- Debian apt - cmake-data - 3.31.6-2: normalized package name match | Debian stable package indexes: cmake-data from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | CMake data files (modules, templates and documentation) | https://cmake.org/
- Debian apt - cmake-doc - 3.31.6-2: normalized package name match | Debian stable package indexes: cmake-doc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | extended documentation in various formats for CMake | https://cmake.org/
- Debian apt - cmake-qt-gui - 3.31.6-2: normalized package name match | Debian stable package indexes: cmake-qt-gui from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Qt based user interface for CMake (cmake-gui) | https://cmake.org/
- Nix - cmake: normalized package name match | nixpkgs package indexes: pkgs/by-name/cm/cmake/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - cmake - 3.28.3-1build7: normalized package name match | Ubuntu 24.04 LTS package indexes: cmake from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | cross-platform, open-source make system | https://cmake.org/
- Ubuntu apt - cmake-curses-gui - 3.28.3-1build7: normalized package name match | Ubuntu 24.04 LTS package indexes: cmake-curses-gui from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | curses based user interface for CMake (ccmake) | https://cmake.org/
- Ubuntu apt - cmake-data - 3.28.3-1build7: normalized package name match | Ubuntu 24.04 LTS package indexes: cmake-data from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | CMake data files (modules, templates and documentation) | https://cmake.org/
- Ubuntu apt - cmake-doc - 3.28.3-1build7: normalized package name match | Ubuntu 24.04 LTS package indexes: cmake-doc from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | extended documentation in various formats for CMake | https://cmake.org/
- Ubuntu apt - cmake-qt-gui - 3.28.3-1build7: normalized package name match | Ubuntu 24.04 LTS package indexes: cmake-qt-gui from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Qt based user interface for CMake (cmake-gui) | https://cmake.org/
- apk - ccmake - 4.2.3-r0: normalized package name match | Alpine Linux edge package indexes: ccmake from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Cross-platform, open-source make system (ccmake configurator) | https://cmake.org/
- apk - cmake - 4.2.3-r0: normalized package name match | Alpine Linux edge package indexes: cmake from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Cross-platform, open-source make system | https://cmake.org/
- apk - cmake-bash-completion - 4.2.3-r0: normalized package name match | Alpine Linux edge package indexes: cmake-bash-completion from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Bash completions for cmake | https://cmake.org/
- apk - cmake-doc - 4.2.3-r0: normalized package name match | Alpine Linux edge package indexes: cmake-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Cross-platform, open-source make system (documentation) | https://cmake.org/
- apk - cmake-emacs - 4.2.3-r0: normalized package name match | Alpine Linux edge package indexes: cmake-emacs from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Cross-platform, open-source make system (emacs mode) | https://cmake.org/


## Related links

- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [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.
- [chapel](https://www.automicvault.com/pkg/brew/chapel/) - Popular package that depends on this formula.
- [bmake](https://www.automicvault.com/pkg/brew/bmake/) - Shares av.db curated category or tags: build-system, build-tools, cli, developer-tools, make.
- [imake](https://www.automicvault.com/pkg/brew/imake/) - Shares av.db curated category or tags: build-system, build-tools, cli, developer-tools, make.
- [style-dictionary](https://www.automicvault.com/pkg/brew/style-dictionary/) - Shares av.db curated category or tags: build-system, build-tools, cli, cross-platform, developer-tools.
- [colormake](https://www.automicvault.com/pkg/brew/colormake/) - Shares av.db curated category or tags: build-tools, cli, developer-tools, make.
- [compiledb](https://www.automicvault.com/pkg/brew/compiledb/) - Shares av.db curated category or tags: build-tools, cli, developer-tools, make.
- [fpm](https://www.automicvault.com/pkg/brew/fpm/) - Shares av.db curated category or tags: build-system, build-tools, cli, developer-tools.
- [melange](https://www.automicvault.com/pkg/brew/melange/) - Shares av.db curated category or tags: build-system, build-tools, cli, developer-tools.
- [nx](https://www.automicvault.com/pkg/brew/nx/) - Shares av.db curated category or tags: build-system, build-tools, cli, developer-tools.
- [meson](https://www.automicvault.com/pkg/brew/meson/) - Local metadata places this package in an adjacent workflow. Shared terms: build, build-system, cli, compiler, cross.
- [premake](https://www.automicvault.com/pkg/brew/premake/) - Local metadata places this package in an adjacent workflow. Shared terms: build, build-system, cli, cross, cross-platform.

## Combined YAML source

View the package source record on GitHub. [combined/cmake.yml](https://github.com/automic-vault/db/blob/main/combined/cmake.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- approval-gate seed metadata
- package-page enrichment
- curated configuration and credential file locations
- 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
- curated agent safety answer
