Refresh Your Home For Fall
Limited time deal NO_OF_HOURS hours NO_OF_MINUTES minutes Limited time deal NO_OF_MINUTES minutes Limited time deal NO_OF_MINUTES minutes NO_OF_SECONDS seconds Limited time deal NO_OF_SECONDS seconds Limited time deal
To see product details, add this item to your cart. You can always remove it later.
Shipper / Seller
Amazon.com
Amazon.com
Shipper / Seller
Amazon.com
Returns
30-day refund / replacement
30-day refund / replacement
This item can be returned in its original condition for a full refund or replacement within 30 days of receipt.
Read full return policy
Gift options
Available at checkout
Available at checkout This item is a gift. Change
At checkout, you can add a custom message, a gift receipt for easy returns and have the item gift-wrapped
Payment
Secure transaction
Your transaction is secure
We work hard to protect your security and privacy. Our payment security system encrypts your information during transmission. We don’t share your credit card details with third-party sellers, and we don’t sell your information to others. Learn more
Added to

Sorry, there was a problem.

There was an error retrieving your Wish Lists. Please try again.

Sorry, there was a problem.

List unavailable.
Kindle app logo image

Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.

Read instantly on your browser with Kindle for Web.

Using your mobile phone camera - scan the code below and download the Kindle app.

QR code to download the Kindle App

  • Modern CMake for C++: Effortlessly build cutting-edge C++ code and deliver high-quality solutions

Follow the authors

Get new release updates & improved recommendations
Something went wrong. Please try your request again later.

Modern CMake for C++: Effortlessly build cutting-edge C++ code and deliver high-quality solutions

4.5 out of 5 stars (43)

Purchase options and add-ons

Gain proficiency in CMake and unlock the complete potential of C++ to develop exceptional projects

Get With Your Book: PDF Copy, AI Assistant, and Next-Gen Reader Free

Key Features

  • Get to grips with CMake and take your C++ development skills to enterprise standards
  • Use hands-on exercises and self-assessment questions to lock-in your learning
  • Understand how to build in an array of quality checks and tests for robust code

Book Description

Modern CMake for C++ isn't just another reference book, or a repackaging of the documentation, but a blueprint to bridging the gap between learning C++ and being able to use it in a professional setting. It's an end-to-end guide to the automation of complex tasks, including building, testing, and packaging software.

This second edition is significantly rewritten, restructured and refreshed with latest additions to CMake, such as support of C++20 Modules.

In this book, you'll not only learn how to use the CMake language in CMake projects but also discover how to make those projects maintainable, elegant, and clean. As you progress, you'll dive into the structure of source directories, building targets, and packages, all while learning how to compile and link executables and libraries. You'll also gain a deeper understanding of how those processes work and how to optimize builds in CMake for the best results. You'll discover how to use external dependencies in your project – third-party libraries, testing frameworks, program analysis tools, and documentation generators. Finally, you'll gain profi ciency in exporting, installing, and packaging for internal and external purposes.

By the end of this book, you'll be able to use CMake confi dently at a professional level.

What you will learn

  • Understand best practices to build ++ code
  • Gain practical knowledge of the CMake language
  • Guarantee code quality with tests and static and dynamic analysis
  • Discover how to manage, discover, download, and link dependencies with CMake
  • Build solutions that can be reused and maintained in the long term
  • Understand how to optimize build artifacts and the build process
  • Program modern CMake and manage your build processes
  • Acquire expertise in complex subjects such as CMake presets

Who this book is for

The book is for build engineers and software developers with knowledge of C/C++ programming who are looking to learn CMake to automate the process of building small and large software solutions. If you’re just getting started with CMake, a long-time GNU Make user, or simply looking to brush up on the latest best practices, this book is for you.

Table of Contents

  1. First Steps with CMake
  2. The CMake Language
  3. Using CMake in Popular IDEs
  4. Setting Up Your First CMake Project
  5. Working with Targets
  6. Using Generator Expressions
  7. Compiling C++ Sources with CMake
  8. Linking Executables and Libraries
  9. Managing Dependencies in CMake
  10. Using the C++20 Modules
  11. Testing Frameworks
  12. Program Analysis Tools
  13. Generating Documentation
  14. Installing and Packaging
  15. Creating Your Professional Project
  16. Writing CMake Presets
  17. Appendix

Frequently bought together

This item: Modern CMake for C++: Effortlessly build cutting-edge C++ code and deliver high-quality solutions
$26.81
Get it as soon as Monday, Sep 21
In Stock
Ships from and sold by Amazon.com.
+
$26.53
Get it as soon as Monday, Sep 21
In Stock
Ships from and sold by Amazon.com.
+
$29.99
Get it as soon as Monday, Sep 21
In Stock
Ships from and sold by Amazon.com.
Total price: $00
To see our price, add these items to your cart.
Details
Added to Cart
Choose items to buy together.

Customers also bought or read

Loading...

From the brand


From the Publisher

cmake book
cmake

What’s new in this edition? 

This edition has been thoroughly rewritten to simplify and reorder the content to offer you the best learning experience. The chapters have been updated to include changes in CMake from versions 3.20 to 3.26.

This edition also includes three completely new chapters on C++20 modules, IDEs supported by CMake, and writing CMake presets. Cutting-edge best practices have been newly integrated throughout the book, while retaining legacy methods that are still in use in the industry.

cmake

What's your favorite part in the book?

This book carefully covers all subjects relevant to C++ projects, but one part stands out—automated testing with CMake. C++ projects require certain considerations when testing, and this book addresses them thoroughly. You will learn how to structure the project files, lay out and configure targets for smooth automated testing, and enable additional program analysis using a non-obstructive approach.

cmake

How does this book differ from other books on CMake and C++?

It is pragmatic. This book explains how fundamental principles are applied for practical purposes in an opinionated manner. Unlike other books, it covers all aspects of building real-life projects—how to structure, build, test, package, document, and install your solution in a way that makes all pieces of this complex process fit together coherently and enables the growth of the project.

cmake book

How does the book help build engineers become proficient in CMake and unlock the true potential of C++?

Tools should solve your problems, not generate unnecessary boilerplate and complexity. CMake is the perfect solution for many build engineers, but it is often explained the wrong way. This book will first show you how users approach CMake and then provide you with enough basics of the language to prevent you from making simple mistakes. Now the real fun can begin—we will tackle all the aspects of the software development lifecycle with practical examples, just like in the real world. You’ll not only understand how to perform testing, program analysis, debugging, packaging, and documentation, but also see why these are important and how they affect all the other elements of the project.

Editorial Reviews

About the Author

Rafał Świdziński, a seasoned staff engineer at Google, boasts over 12 years of full-stack development expertise. With a track record of spearheading projects for industry giants like Cisco Meraki, Amazon, and Ericsson, he embodies a commitment to innovation. As a Londoner by choice, he remains at the forefront of technological progress, engaging in a myriad of personal ventures. His recent pivot toward AI in healthcare refl ects his dedication to impactful advancements. Rafał values top-notch code quality and craftsmanship, sharing insights through his YouTube channel and published books.

Product details

  • Publisher ‏ : ‎ Packt Publishing
  • Publication date ‏ : ‎ May 28, 2024
  • Edition ‏ : ‎ 2nd ed.
  • Language ‏ : ‎ English
  • Print length ‏ : ‎ 502 pages
  • ISBN-10 ‏ : ‎ 1805121804
  • ISBN-13 ‏ : ‎ 978-1805121800
  • Item Weight ‏ : ‎ 1.89 pounds
  • Dimensions ‏ : ‎ 7.5 x 1.14 x 9.25 inches
  • Best Sellers Rank: #223,816 in Books (See Top 100 in Books)
  • Customer Reviews:
    4.5 out of 5 stars (43)

About the authors

Follow authors to get new release updates, plus improved recommendations.