CMake
No written verdict yet. Here is what commenters said.
Why people recommend it
“when used as intended, CMake configuration is a joy to use”
“I think CMake actually has the best default evolution system out there”
Show 3 more
“Or with CMake, which has a cross-platform command-line,”
“since CMakes FetchContent module has been available I have not had a need for a dependency manager outside of CMake itself.”
“When you need a configuration step, cmake will actually save you a lot of time”
Caveats and dissent
“Save us from Git and CMake Steve!”
“I try to avoid any software that requires cmake as cmake itself is overly large and complicated, it takes forever to build, static binaries are enormous”
Show 2 more
“I personally detest cmake, so I use nix + own configure script + ninja.”
“CMake is an abomination against god”
Often compared with
Who recommends it in their own words
Threads where it came up
- I built a Cargo-like build tool for C/C++ 6 mentions
- Faster Than Ninja 3 mentions
- Ask HN: What Are You Working On? (December 2025) 3 mentions
- Ghostling 2 mentions
- Anthropic's Scion is heavily inspired by Mononoke 1 mention
- The Problem of System Communication 1 mention
Data: cmake.json. Quotes are verbatim; the verdict and theme labels are written by a model from these comments, and every clause links to its sources.
All comments 40
“Save us from Git and CMake Steve!”
“I try to avoid any software that requires cmake as cmake itself is overly large and complicated, it takes forever to build, static binaries are enormous”
“CMake”
Xerces is an old library, probably ported from autotools and will do a lot of autotools like checks which for CMake means: creating a CMake project with the probe, generating the build files from it, building it, gathering results. Once for each test. It's SLOOOOW. I recently (a few weeks ago) made a project to batch those type of commands together and parallelize tests as much as possible. You can check a merge requ
“when used as intended, CMake configuration is a joy to use”
“I personally detest cmake, so I use nix + own configure script + ninja.”
“Technologies: Lots of C++23, Qt 6.9, CMake, git”
“cmake/ninja work great with latest clang”
“I think CMake actually has the best default evolution system out there”
“I'm a casual user of CMake but not too enthused about it”
“CMake”
“CMake/ninja”
“CMake is an abomination against god”
“Lots of C++23, Qt 6.9, CMake, git, OpenGL, CUDA, Boost, Jenkins.”
“it will call cmake -B out_dir -S root”
“I recommend you start by getting acquainted with CMake and its state of modules support.”
“it will leave out synthetic targets from the database”
“uses cmake stuff”
“Or with CMake, which has a cross-platform command-line,”
“I didn't know CMake introduced this debug adapter. This would have been very useful to me at some occasions.”
“since CMakes FetchContent module has been available I have not had a need for a dependency manager outside of CMake itself.”
“has had CMake debugging since cmake 3.27”
“When you need a configuration step, cmake will actually save you a lot of time”
“I've compiled for QNX and ARM32 boards with CMake, no issues”
“cmake's toolchain detection takes a lot of time unfortunately”
“Every time I wanted to start something new I'd spend the first hour writing CMakeLists.txt”
“After a day of hating on CMake generator expressions”
“I hate CMake as much as anyone”
“Technologies: Lots of C++23, Qt 6.9, CMake, git, OpenGL, CUDA, Boost, Jenkins.”
“CMake still doesn't support `import std` officially”
“I don't really like complex build systems like CMake or Ninja”
“Interestingly, cmake 4.3 just added a builtin command 'bin2c'”
“cmake -DINPUT=pixel.gif -DOUTPUT=pixel.h -DARRAY_NAME=pixel_gif -P bin2header.cmake”
“I have been using it for 20 years”
“it seems you still have to use cmake”
“I always thought CMake was good enough.”
“Or you can opt for CMake.”
“I don't care because I use cmake”
“Meson or cmake does not download anything”
“I have also deleted everything that was CMake from the project”