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-7.8 platform.

Package Information

  • Download (HTTP):

  • Download MD5 sum: cd3034e0a44256a0917e254167217fc8

  • Download size: 6.5 MB

  • Estimated disk space required: 696 MB (with tests and cmake-gui)

  • Estimated build time: 4.6 SBU, with parallelism = 4 (with tests and cmake-gui)

CMake Dependencies



Qt-4.8.7 or Qt-5.5.1 (for the Qt-based GUI), Subversion-1.9.2 (for testing), and Sphinx (for building documents)

User Notes:

Installation of CMake

If Qt4 and Qt5 are installed in /opt, use source setqt4 or source setqt5 to choose which one will be used to build the Qt-based GUI.

Install CMake by running the following commands:

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

To test the results, issue: bin/ctest -j<N> -O cmake-3.4.0-test.log, where <N> is an integer between 1 and the number of system cores. For some systems, it may be necessary to run the tests only for Qt4 using source setq4, then export CXXFLAGS="-std=c++11" before the ./bootstrap ...) command. If used, be sure to unset CXXFLAGS after the tests. One of the problematic tests relates to the test procedures finding the correct Qt files. Eight of 447 tests are known to fail under some circumstances related to Gtk+2 and c++ standards.

Now, as the root user:

make install

Command Explanations

--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.4 and /usr/share/doc/cmake-3.4.0

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 2015-11-18 16:27:48 -0600