# Install ctemplate with Homebrew, pacman, apt, zypper

Template language for C++. Version 2.4 via Homebrew; verified from local package data. Also installable with debian: sudo apt install libctemplate-dev.

## Install

```sh
sudo av install brew:ctemplate
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install ctemplate
```

  Evidence: local Homebrew formula metadata

### Linux

- pacman (92%):

```sh
sudo pacman -S ctemplate
```

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

- Debian apt (92%):

```sh
sudo apt install libctemplate-dev
```

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

- zypper (92%):

```sh
sudo zypper install libctemplate-devel
```

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

## Package facts

- **Package key:** brew:ctemplate
- **Package manager:** Homebrew
- **Version:** 2.4
- **Source summary:** Template language for C++
- **Homepage:** <https://github.com/olafvdspek/ctemplate>
- **Repository:** <https://github.com/olafvdspek/ctemplate>
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- diff_tpl_auto_escape (alias)
- make_tpl_varnames_h (alias)
- template-converter (alias)

## Install behavior

- Bottle: not available

## Freshness

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

ctemplate is a C++ template library with companion command-line tools for template conversion and generated variable-name headers. Its official changelog traces the project from a Google open-source release in 2006 through community-maintained 2.x releases.

### Project history

The initial release was made by Google Inc. in March 2006 as a package implementing a simple but powerful template language for C++. Early releases added portability work, escaping modes, editor support, and threading/build variants.

In the 2.0 release in January 2012, the project changed its official contact, rewrote documentation to refer to Ctemplate rather than Google Template, renamed Visual Studio files, and updated copyright text to reflect Google's relinquished ownership. Later releases under Olaf van der Spek focused on C++11 fixes, refactoring, and a Python 3 build-tool update.

### Adoption history

The README positions ctemplate as portable C++ infrastructure, tested across Linux distributions, Solaris, FreeBSD, older OS X releases, and Windows Visual C++ versions. Homebrew and other package-manager metadata keep it available as a system C++ library rather than only as vendored source.

### How it is used

Users link applications against either the threaded ctemplate library or the nothreads variant, and the package installs small helper executables such as make_tpl_varnames_h, template-converter, and diff_tpl_auto_escape.

### Why package nerds care

For package maintainers, ctemplate is representative of older Google-era C++ infrastructure: Autotools, platform portability fixes, generated headers, optional thread linkage, and a long-lived ABI-style library package.

### Timeline

- 2006: Initial Google Inc. release.
- 2011: 1.0 release after the 0.x series.
- 2012: 2.0 release renamed project surfaces from Google Template to Ctemplate and reflected Google's relinquished ownership.
- 2020: 2.4 release switched build tooling to Python 3.

### Related projects

- The project originated as Google Template/Ctemplate and remains a C++ templating library rather than a web framework or general text-preprocessor package.

### Sources

- <https://github.com/OlafvdSpek/ctemplate/blob/master/ChangeLog>
- <https://github.com/OlafvdSpek/ctemplate#readme>
- <https://formulae.brew.sh/formula/ctemplate>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Other Package-Manager Records

- Debian apt - libctemplate-dev - 2.4-4: normalized package name match | Debian stable package indexes: libctemplate-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Simple but powerful template language for C++ - development files | https://github.com/olafvdspek/ctemplate
- Debian apt - libctemplate3t64 - 2.4-4: normalized package name match | Debian stable package indexes: libctemplate3t64 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Simple but powerful template language for C++ | https://github.com/olafvdspek/ctemplate
- Ubuntu apt - libctemplate-dev - 2.4-3.1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libctemplate-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Simple but powerful template language for C++ - development files | https://github.com/olafvdspek/ctemplate
- Ubuntu apt - libctemplate3t64 - 2.4-3.1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libctemplate3t64 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Simple but powerful template language for C++ | https://github.com/olafvdspek/ctemplate
- pacman - ctemplate - 2.4-4: normalized package name match | Arch Linux sync databases: ctemplate from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | A library implementing a simple but powerful template language for C++ | https://github.com/olafvdspek/ctemplate
- zypper - libctemplate-devel - 2.4-1.18: normalized package name match | openSUSE Tumbleweed package metadata: libctemplate-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Development files for ctemplate, a C++ language templating library | https://github.com/OlafvdSpek/ctemplate
- zypper - libctemplate3 - 2.4-1.18: normalized package name match | openSUSE Tumbleweed package metadata: libctemplate3 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Library for a C++ template languaging | https://github.com/OlafvdSpek/ctemplate


## Combined YAML source

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


## Sources

- 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
