# Professional CMake: A Practical Guide 17th Edition

**URL:** https://discourse.cmake.org/t/professional-cmake-a-practical-guide-17th-edition/9917
**Category:** Community
**Created:** [January 24, 2024, 10:59am UTC](https://discourse.cmake.org/t/professional-cmake-a-practical-guide-17th-edition/9917 "2024-01-24T10:59:51Z")
**Posts on this page:** 1
**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: [January 24, 2024, 10:59am UTC](https://discourse.cmake.org/t/professional-cmake-a-practical-guide-17th-edition/9917/1 "2024-01-24T10:59:51Z")

</div>

The 17th Edition of the book _Professional CMake: A Practical Guide_ is now available. It has been updated for the CMake 3.28 release. The main highlights of this new edition are support for C++20 modules and XCFrameworks.

The _Language Requirements_ chapter also got a bit of an overhaul. The updated advice around setting language standards and whether compiler extensions are enabled will be especially important if you’re going to be using C++20 modules!

More detailed [release notes](https://crascit.com/professional-cmake/release-notes/17th-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/)
