macOS
brew install csmithlocal Homebrew formula metadata
brew / rank 10103
Generates random C programs conforming to the C99 standard. Version 2.3.0 via Homebrew; verified 2026-07-10. Also installable with debian: sudo apt install csmith.
install
brew install csmithlocal Homebrew formula metadata
sudo apk add csmithAlpine Linux edge package indexes · csmith · source: dl-cdn.alpinelinux.org
sudo apt install csmithDebian stable package indexes · csmith · source: deb.debian.org
sudo dnf install csmithFedora Rawhide package metadata · csmith · source: dl.fedoraproject.org
nix profile install nixpkgs#csmithnixpkgs package indexes · pkgs/by-name/cs/csmith/package.nix · source: api.github.com
sudo zypper install csmithopenSUSE Tumbleweed package metadata · csmith · source: download.opensuse.org
overview
Generates random C programs conforming to the C99 standard
history
Csmith is a random C program generator designed for compiler testing. It is a package-nerd staple because it turns compiler validation into a repeatable command-line workload that distributions can package and compiler developers can run locally.
The official README says Csmith was developed at the University of Utah by Xuejun Yang, Yang Chen, Eric Eide, and John Regehr as part of a compiler-testing research project. It says the project was open sourced in 2009 and is maintained as an open-source project in discretionary time.
The project became known through differential testing of C compilers. The README points to the paper Finding and Understanding Bugs in C Compilers as the best summary of the research, and the packaged tool is available across Homebrew and several Linux distributions according to the input package-manager facts.
Official usage examples generate a random C file with csmith, compile it with GCC and Clang, run both outputs, and compare results. The README also notes that generated programs avoid undefined behavior and that timeouts are best practice because generated programs can contain infinite loops.
Csmith is a compact command-line generator with outsized value for compiler packages: it can be scripted into local compiler checks, regression hunts, and distribution QA without a large service dependency.
security posture
narrow executable package without higher-risk signals.
green risk · low confidence · appliance
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
compiler_test.pl | executable | indexed executable | Discovered from the local executable index. |
csmith | executable | indexed executable | Discovered from the local executable index. |
launchn.pl | executable | indexed executable | Discovered from the local executable index. |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
install metadata
| Package key | brew:csmith |
|---|---|
| Version | 2.3.0 |
| Package manager | Homebrew |
| Homepage | https://github.com/csmith-project/csmith |
| Repository | https://github.com/csmith-project/csmith |
| Last updated | 2026-07-10T13:05:07-04:00 |
| Pulse | updated |
| Bottle | not recorded |
| Service | none declared |
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
csmith 2.3.0-8
generator of random C programs
https://embed.cs.utah.edu/csmith/
sudo apt install csmithlibcsmith-dev 2.3.0-8
generator of random C programs (development files)
https://embed.cs.utah.edu/csmith/
sudo apt install libcsmith-devlibcsmith0t64 2.3.0-8
generator of random C programs (runtime library)
https://embed.cs.utah.edu/csmith/
sudo apt install libcsmith0t64csmith
nix profile install nixpkgs#csmithcsmith 2.3.0-7.1build1
generator of random C programs
https://embed.cs.utah.edu/csmith/
sudo apt install csmithlibcsmith-dev 2.3.0-7.1build1
generator of random C programs (development files)
https://embed.cs.utah.edu/csmith/
sudo apt install libcsmith-devlibcsmith0t64 2.3.0-7.1build1
generator of random C programs (runtime library)
https://embed.cs.utah.edu/csmith/
sudo apt install libcsmith0t64csmith 2.3.0-r2
Tool for generating random C programs
https://embed.cs.utah.edu/csmith/
sudo apk add csmithcsmith-doc 2.3.0-r2
Tool for generating random C programs (documentation)
https://embed.cs.utah.edu/csmith/
sudo apk add csmith-doccsmith 2.4.0-16.fc45
Tool to generate random C programs for compiler testing
http://embed.cs.utah.edu/csmith/
sudo dnf install csmithcsmith-devel 2.4.0-16.fc45
Header files and libraries for Csmith development
http://embed.cs.utah.edu/csmith/
sudo dnf install csmith-develcsmith 2.3.0-1.33
Random C code generator
https://github.com/csmith-project/csmith
sudo zypper install csmithsource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.