Technical requirements
As with the previous chapters, the examples are tested with CMake 3.21 and run on any of the following compilers:
- GCC9 or newer
- Clang 12 or newer
- MSVC 19 or newer
Some of the examples for code coverage, sanitizers, and static code analysis require GCC or Clang to run and will not work with MSVC. For running Clang on Windows, have a look at Chapter 8, Executing Custom Tasks with CMake, where toolchain files are introduced. Some examples need the Catch2 unit testing suite installed to compile. Some examples pull dependencies from various online locations, so an internet connection is required as well.
In addition to a working compiler, the following software is used for the examples:
- Gcov and Gcovr for the examples on code coverage
- Cppcheck, Cpplint, and include-what-you-use for the examples on static code analyzers
All examples and source code are available on the GitHub repository of this book at https://github.com...