Introduction to CMake

The CMake package contains a modern toolset used for generating Makefiles. It is a successor of the auto-generated configure script and aims to be platform- and compiler-independent. A significant user of CMake is KDE since version 4.

This package is known to build and work properly using an LFS-9.1 platform.

Package Information

  • Download (HTTP):

  • Download MD5 sum: e3dacb6b612a6b06f7054c7fb4e18616

  • Download size: 8.7 MB

  • Estimated disk space required: 443 MB (add 541 MB for tests)

  • Estimated build time: 2.8 SBU (add 3.8 SBU for tests, both using parallelism=4)

CMake Dependencies





Qt-5.14.1 (for the Qt-based GUI), Subversion-1.13.0 (for testing), and Sphinx (for building documents)

User Notes:

Installation of CMake

Install CMake by running the following commands:

sed -i '/"lib64"/s/64//' Modules/GNUInstallDirs.cmake &&

./bootstrap --prefix=/usr        \
            --system-libs        \
            --mandir=/share/man  \
            --no-system-jsoncpp  \
            --no-system-librhash \
            --docdir=/share/doc/cmake-3.16.4 &&

To test the results, issue: bin/ctest -j<N> -O cmake-3.16.4-test.log, where <N> is an integer between 1 and the number of system cores. In case the environment variable LANG is set to a non-blank value and failures occur, try running the tests without having LANG set. The test RunCMake.CommandLineTar is known to fail if the zstd package is not installed.

Now, as the root user:

make install

Command Explanations

sed ... Modules/GNUInstallDirs.cmake: This command disables applications using cmake from attempting to install files in /usr/lib64/.

--system-libs: This switch forces the build system to link against Zlib, Bzip2, cURL, Expat and libarchive installed on the system.

--no-system-jsoncpp: This switch removes the JSON-C++ library from the list of system libraries. A bundled version of that library is used instead.

--qt-gui: This switch enables building of the Qt-based GUI for CMake.


Installed Programs: ccmake, cmake, cmake-gui (optional), cpack, and ctest
Installed Libraries: None
Installed Directories: /usr/share/cmake-3.16 and /usr/share/doc/cmake-3.16.4

Short Descriptions


is a curses based interactive frontend to cmake.


is the makefile generator.


(optional) is the Qt-based frontent to cmake.


is the CMake packaging program.


is a testing utility for cmake-generated build trees.

Last updated on 2020-02-15 08:54:30 -0800