Basic CMake configuration file
To configure and check all the requisite dependencies for our project, we are going to use CMake, but it is not the only way that this can be done; we can configure our project in any other tool or IDE, such as Makefiles or Visual Studio, but CMake is a more portable way to configure multiplatform C++ projects.
CMake uses configuration files called CMakeLists.txt, where the compilation and dependencies process is defined. For a basic project based on an executable built from a single source code file, a CMakeLists.txt file comprising three lines is all that is required. The file looks as follows:
cmake_minimum_required (VERSION 3.0) project (CMakeTest) add_executable(${PROJECT_NAME} main.cpp)
The first line defines the minimum version of CMake required. This line is mandatory in our CMakeLists.txt file and allows us to use the functionality of CMake defined from a specific version; in our case, we require a minimum of CMake 3.0. The second line defines the project name. This name is saved in a variable called PROJECT_NAME.
The last line creates an executable command (add_executable()) from the main.cpp file, gives it the same name as our project (${PROJECT_NAME}), and compiles our source code into an executable called CMakeTest which is the name that we set up as a project name. The ${} expression allows access to any variable defined in our environment. Then, we can use the ${PROJECT_NAME} variable as an executable output name.