Complete CMake Project Management [2024]
Learn CMake to manage your C/C++ project! As well as how to manage dependencies, unit tests, tools and more easily.
What you will learn
CMake (CLI, GUI and with IDEs)
Linking external libraries with VCPKG, Git and through subdirectories
Create simple C/C++ build commands and structure
Running Executables, Shell scripts, CMake scripts or Python on build
Cross-compiling via Emscripten Toolchains for the web
Use with IDEs - Visual Studio, VS Code, CLion
Packaging the project with an install wizard or directly installing it
Unit Testing: without a framework, with Catch2 or with GoogleTest
Embedding, copying and configuring files on build
Creating code graphs with GraphViz
Analyzing your code through CppCheck
Add a compiler runner like CCache for faster builds
Why take this course?
Reviews:
"Awesome course. I wanted to learn CMake a long time ago, but every time I tried to learn I just felt overwhelmed by the sources. This course gives a really good step by step approach, with a good didactic." - Andre Aranha
"Totally recommend this course the mentor teaches each and ever aspect of CMake also he answer every query" - Million Stinger_S
"Very knowledgeable instructor! Besides, if you want to have anything to do with C and/or C++, even if just as a hobby, you will need to know how to deal with CMake and this course teaches you everything you need to not only get you started with your toy projects, but also start working on more serious and bigger projects as it touches upon dependency management, testing, packaging, and so on. You can't go wrong with this one." - Fellipi Carmo
"The course is suitable for beginners and advanced users who want to improve their cmake knowledge." - Victor Stoykov
Description:
This course is all about CMake. CMake is an application that helps you structure C/C++ based native projects, generate build commands for the target platform, build your application, pack it into an installer, install it, test it, and it will even help you with managing your dependencies.
In this course, you will learn:
How to use CMake to structure and compile your C/C++ projects
How to manage your dependencies
How to get your project compiled for the web using Emscripten
How to include unit tests and test your application
How to customize the build pipeline with your own tools (if you want to do your own custom build steps)
How to compile other projects that support CMake and even ones that do not
How to install and package your project
Bonus snippets include some advanced setups like documentation using Doxygen
In the end, you will have all the knowledge needed to be able to open up a random CMake project and compile it yourself. You will also be able to confidently start and write your own CMake scripts for your projects. This will elevate your programming experience with the low-level C/C++ languages and it will also simplify a lot of the hard concepts related to those languages.