Chapter Wrap-up

Let's see what you've learned in this chapter and test your understanding of compilation.


We have completed yet another chapter! There is no doubt that compilation is a complex process. With all its edge cases and specific requirements, it can be difficult to manage without a good tool. Thankfully, CMake is doing a great job in supporting us here.

What have we learned so far? We started by discussing what compilation is and where it fits in the larger story of building and running applications in the operating system. We then examined the stages of compilation and the internal tools that manage them. This is very useful in resolving all the issues in more advanced cases that we might encounter down the line.

Then, we looked at how to ask CMake to verify whether the compiler available on the host is meeting all the requirements for our code to build. As we have already established, it's a much better experience for users of our solution to see a friendly message asking them to upgrade rather than some arcane error printed by an old compiler that is confused by the new features of the language.

Get hands-on with 1200+ tech skills courses.