Post

I HATE CMake. Rant of an inexperienced C++ developer

Recently, I’ve been learning to use C++. Recently, I’ve learned I don’t know as much C++ as I think. Nothing has exposed me as much as Cmake has. I feel like I’ve been using more magical incantations than usual, i.e. I don’t really know what I’m doing or the specific keywords I’m doing and moreso just hacking until I get the result I want. This is mostly due to CMake.

What I find frustrating about CMake is that there are dozens of ways to do the same thing (why?!). Furthermore, information on the internet is often outdated and may not be relevant, I don’t know particular reasons to choose one version of CMake over another.

In contrast, Rust,arguably C++’s competitor, has much less verbose packagement. It is a breeze to use and is not unlike Python in terms of ease of use. I’ve spent days just trying to bend CMake to my will whereas I could get Cargo, Rust’s build management System, to work in less than a few hours. CMake is the only case I know of where the build management system is harder than the language itself (god help me if I find a worse example).

Fuck you CMake.

This post is licensed under CC BY 4.0 by the author.