Meson
An open-source build system for C, C++, Rust and other languages focused on speed and readability.
These buttons open the developer's own site, repository or store listing in a new tab. wares.gg does not host downloads.
2 more ways to get Meson
Package managers
- Chocolatey
choco install meson - Homebrew
brew install meson
About Meson
Meson is a build system that aims to be quick and easy to write for. Build definitions use a readable, non-Turing-complete language, and builds are optimised for fast full and incremental runs without giving up correctness.
It supports Linux, macOS and Windows with GCC, Clang and Visual Studio, and handles C, C++, C#, D, Fortran, Java and Rust. Cross compilation covers many operating systems and bare metal, and a built-in dependency provider works alongside distribution packages.
Strengths
- Readable build definition language
- Fast full and incremental builds
- Cross compilation including bare metal
- Works with GCC, Clang and Visual Studio
Limitations
- Build language is deliberately limited, so unusual logic can be awkward
- Smaller ecosystem than CMake
Details
- Pricing
- FreeFree and open source.
- License
- Apache-2.0
- Developer
- The Meson contributors
- Platforms
- Windows, macOS, Linux, Command line
- How it runs
- Downloadable app
- Account
- Not required
- Works offline
- Yes
- Best suited for
- C and C++ projects that want a simpler alternative to CMake or Autotools
- Categories
- Developer tools
- Last verified
- Added
- Provenance
- Facts checked against the developer's own pages and store listings, 1 sources on file.
Alternatives to Meson
Compare allSoftware that can replace Meson for an important use case, and what changes if you switch.
CMake
The de facto standard build system generator for C and C++, producing native build files for whatever toolchain is on the machine.
CMake is the de facto C and C++ build generator with integration everywhere, but its scripting language is idiosyncratic and errors are often unhelpful.
Bazel
An open-source build and test system for multi-language projects, with incremental builds and caching.
Bazel handles large multi-language monorepos with local and distributed caching, but its build files and rules take time to learn.
Ninja
A small, fast build system designed to run build files generated by tools such as CMake.
Ninja is a small fast build runner meant to execute generated build files, so most projects still need a higher-level generator.
Zig
A general-purpose systems programming language and toolchain that also works as a drop-in C/C++ compiler.
Zig brings a built-in build system and drop-in C/C++ compiler with cross-compilation, though it is still pre-1.0 with breaking changes.
Similar software
Related functionality, not necessarily a direct replacement.
GCC
The GNU Compiler Collection, compilers for C, C++, Fortran, Ada, Go, Rust and other languages.
LLVM
A collection of modular compiler and toolchain technologies, including the Clang C and C++ compiler.
Gradle
An open-source build automation tool for Java, Kotlin and Android projects, with Kotlin and Groovy build scripts.
Cargo
Rust's build system and package manager.
KDevelop
A cross-platform open-source IDE from KDE for C, C++, Python, QML/JavaScript and PHP.
Qt Creator
A cross-platform IDE for building C++ and Qt applications, maintained by the Qt project.