CMake

CMake

CMake is an open source, cross-platform and free tool (or meta build system), that some would describe as a build system generator that is used in conjunction with your build environment.

Use CMake with Incredibuild

What is CMake?

CMake is an open-source, cross-platform and free tool (or meta build system), that some would describe as a build system generator that is used in conjunction with your build environment. It is utilized to control the build process (perform build configuration) by using configuration files or what you would call scripts (CMakeLists.txt) to generate build files. In addition to supporting various build systems and operating systems, it also supports several programming languages such as C++, C#, Cuda, and more.

Try it now
What is CMake

What is Modern CMake?

Starting with version 3.0, CMake is referred to as Modern CMake. Modern CMake is all about targets and properties. Targets are, like the name implies, the desired outcomes – the job of the building process, which is compiled out of properties.

History of CMake

Cmake was developed for the Insight Segmentation and Registration Toolkit (ITK) in 1999 to support the need for a cross-platform build environment. It was funded by the United States National Library of Medicine (NLM) as part of the Visible Human Project. It was inspired by pcmaker (by Ken Martin). Bill Hoffman from Kitware created CMake relying on ideas from pcmaker. The first implementation of CMake occurred in 2000. Since then, many changes have been made to CMake by the community. In June 2014 version 3.0 of CMake was released as Modern CMake. The latest release of CMake is version 3.19.0

How does it work?

CMake automatically generates Makefiles for a project. It basically generates project files to be used with development tools.

 

Try it now

Get Free License

How to install CMake?

There are various ways to install CMake that vary depending on the platform (Windows, Linux, macOS, UNIX). To learn how to install CMake on each platform click here.

CMake examples

Click here for CMake examples.

CMake advantages

  • It’s cross platform
  • Supports many IDEs, build systems and languages
  • It’s very common so there’s a lot of online resources
  • Maintained
icon

Bottom line

CMake is a widely popular open-source build system generator that one of its stronger suits is the fact it is cross-platform.

Get Free License

More Build systems

  • MSBuild

  • Make

  • Ninja

  • WAF

  • Qmake

  • QBS

  • Jom

  • Scons

  • Jam / Bjam / jamPlus

  • Gnu Make