# Professional CMake: A Practical Guide 16th Edition

**URL:** https://discourse.cmake.org/t/professional-cmake-a-practical-guide-16th-edition/9273
**Category:** Community
**Created:** [October 25, 2023, 12:31pm UTC](https://discourse.cmake.org/t/professional-cmake-a-practical-guide-16th-edition/9273 "2023-10-25T12:31:01Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![craig.scott](https://discourse.cmake.org/user_avatar/discourse.cmake.org/craig.scott/32/20_2.png) [@craig.scott](https://discourse.cmake.org/u/craig.scott)
#### Post date: [October 25, 2023, 12:31pm UTC](https://discourse.cmake.org/t/professional-cmake-a-practical-guide-16th-edition/9273/1 "2023-10-25T12:31:01Z")

</div>

The 16th Edition of the book _Professional CMake: A Practical Guide_ is now available (finally!). It has been updated for the CMake 3.27 release. There’s quite a bit of new material, but two main areas in particular are worth highlighting:

- Two new chapters were added to cover static and dynamic code analysis. These explain how to use tools like clang-tidy, cppcheck, cpplint and include-what-you-use, and also how to set up and use sanitizers and code coverage.
- The first five chapters of the book are now made available for free as a Getting Started guide. A new chapter was also added for this to cover the basics of testing and deployment.

More detailed [release notes](https://crascit.com/professional-cmake/release-notes/16th-edition/) are available. As usual, the book is available exclusively from [https://crascit.com/professional-cmake/](https://crascit.com/professional-cmake/)

[![front-cover-794x1123](https://discourse.cmake.org/uploads/default/original/1X/eb9bb58bebfd2f50af732c642e8a3e548c736b7b.png)](https://crascit.com/professional-cmake/)

---

<div class="post-metadata">

### Author: ![DinoSource](https://discourse.cmake.org/user_avatar/discourse.cmake.org/dinosource/32/4103_2.png) [@DinoSource](https://discourse.cmake.org/u/DinoSource)
#### Post date: [December 20, 2023, 6:00pm UTC](https://discourse.cmake.org/t/professional-cmake-a-practical-guide-16th-edition/9273/2 "2023-12-20T18:00:19Z")

</div>

Great work! Thank you for such an amazing book, Craig!  
But it seems it’s time to update it for the CMake 3.28.1 release, issuing 17th Edition 🙂  
C++20 modules rock! It’s good to see finally C++20 modules support in CMake. Looking forward to use them with upcoming Clang and GCC releases under Linux.
