# Install kcov with Homebrew

Code coverage tester for compiled programs, Python, and shell scripts. Version 43 via Homebrew; verified 2026-07-27.

## Install

```sh
sudo av install brew:kcov
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install kcov
```

  Evidence: provider-native install command

## Package facts

- **Package key:** brew:kcov
- **Package manager:** Homebrew
- **Version:** 43
- **Source summary:** Code coverage tester for compiled programs, Python, and shell scripts
- **Homepage:** <https://simonkagstrom.github.io/kcov/>
- **Repository:** <https://github.com/SimonKagstrom/kcov>
- **Last updated:** 2026-07-27T15:44:48+02:00
- **Generated:** 2026-08-03T00:40:33+00:00

## Executables

- kcov (alias)
- kcov-system-daemon (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 43
## Project history and usage

kcov is a code coverage tool for compiled programs, Python, and shell scripts. Its README says it began as a fork of Bcov and uses DWARF debugging information so programs can be measured without special compiler switches.

### Project history

Simon Kagstrom created the GitHub repository in August 2010. From the README's account, kcov started with Bcov's idea of using debug information for coverage and then expanded into a broader coverage-reporting tool with HTML, lcov-style output, Cobertura XML, JSON output, and CI integrations.

Release history documents platform and integration work through the 2010s and 2020s, including Docker images from v31, macOS binaries in v32, FreeBSD and macOS build work in v36, AArch64 support in release 38, RISC-V and Codecov updates in v41, and Cobertura/Jenkins fixes in v43.

### Adoption history

The batch input records packages in Homebrew, Debian, Fedora, MacPorts, Nix, Arch, and openSUSE. Upstream docs also point to an official Docker image, making kcov available through both traditional package managers and container workflows.

### How it is used

A typical invocation runs kcov with an output directory and an executable plus arguments. Users filter included or excluded paths, merge multiple coverage runs, and publish reports to CI services such as Coveralls, Codecov, Jenkins, SonarQube, GitHub Actions, and GitLab CI.

### Why package nerds care

kcov is notable because it brings coverage to binaries and scripts without requiring the build to be compiled with coverage instrumentation. For distro packagers and CI maintainers, that makes it useful for testing shell-heavy or mixed-language projects where gcov-style workflows are awkward.

### Timeline

- 2010-08-23: GitHub repository created.
- 2015-11-02: v29 release published.
- 2016-04-28: v31 release published; README documents official Docker images for releases since v31.
- 2018-08-23: v36 release included FreeBSD port and macOS build fixes.
- 2020-01-17: release 38 added AArch64 support.
- 2024-07-23: v43 release included Cobertura and Jenkins fixes.

### Related projects

- kcov descends from Bcov and integrates with coverage-reporting services including Coveralls, Codecov, Jenkins, SonarQube, GitHub Actions, and GitLab CI.

### Sources

- <https://bcov.sourceforge.net/>
- <https://github.com/SimonKagstrom/kcov>
- <https://github.com/SimonKagstrom/kcov/releases>
- <https://simonkagstrom.github.io/kcov>


## Security Notes

generalized runtime or code generation signal.

- **Geiger risk:** yellow / medium
- generalized runtime or code generation signal


## Combined YAML source

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


## Sources

- Nucleus package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
