Overview CMake is a cross-platform build tool like GNU build system , but it's much easier to use and faster than GNU build system. It is designed to build software written by C, C++ or Java. It adds a lot of implicit rules to help programmer with few configurations. This article will explain how to use this powerful tool step by step with workable examples. We will talk about the details of each syntax we use here but not try to exhaust all syntax CMake has. If you want to dig into CMake, please refer to its document . The version of CMake we use is 2.8.7 on Ubuntu 12.04. However, we just use the basic syntax. It sould be okay if you use other versions and on other platforms. First example - say hello Following the great tradion, our first example will use CMake to build a simple C++ program to say hello. Before we add any CMake configuration files, we have following files: