Tag: CMake
14 posts
-
vcpkg for Reproducible C++ Builds: Manifest Mode, Triplets, Versioning and Overlay Ports
Hands-on C++ vcpkg primer: install, Manifest mode, triplets, versioning, custom overlay ports, CMake toolchain, and common errors—reproducible builds.
-
C++ Conan Basics — Install, conanfile, Profiles, CMake
Conan 2.x for C++: install, conanfile.txt/py, profiles, remotes, CMake toolchain, package basics, errors, CI, and reproducible builds.
-
C++ Build Systems Compared: CMake, Meson, Bazel, and Makefile
Practical comparison of C++ build systems: CMake, Meson, Bazel, and Makefile, plus vcpkg vs Conan—trade-offs, errors, migration, and CI patterns.
-
Reading CMake Errors by Phase: Compiler Detection, find_package, Missing Targets, Link Failures and Stale Caches
Real CMake errors decoded by phase: No CMAKE_CXX_COMPILER could be found, missing package config, Cannot find source file, undefined references, stale caches.
-
CMake Link Errors: LNK2019, undefined reference, and Fixes
Diagnosing CMake link errors like LNK2019 and undefined reference - common causes (missing target_link_libraries, ODR violations, ABI mismatches) and how to fix each one.
-
C++ Package Management: vcpkg & Conan — Escaping External
C++ package management with vcpkg and Conan: dependency hell, Manifest mode, CMake, triplets, Conan profiles, common errors, and production patterns.
-
Advanced CMake for C++: Multi-Target Projects, External Dependencies and install()
Advanced CMake: multi-target layouts, target_link_libraries, FetchContent, find_package, generator expressions, install() and Config.cmake.
-
CMake Tutorial for C++: CMakeLists.txt and Targets
Learn CMake for C++ projects: CMakeLists.txt, add_executable, add_library, target_link_libraries, find_package, out-of-source builds, VS Code CMake.
-
CMake Errors: 10 Common CMake Error Messages and How to Fix
Fix CMake Error messages: target not found, version mismatch, find_package failures, syntax errors, and out-of-source builds.
-
CMake “Could NOT find …”: find_package Failures
Fix CMake Could NOT find Boost and other packages: Config vs Module mode, dev packages on Linux, version constraints, COMPONENTS, case sensitivity.
-
CMake vs Make vs Ninja vs Meson: What Each Build Tool Actually Does and How to Choose
What Make, CMake, Ninja and Meson each do, how a build tool differs from a build file generator, example build files, and which combination fits a C++ project.
-
CMake for C++ Projects: Targets, Presets, find_package and C++20 Modules
Full CMake tutorial for C++: cross-platform builds, CMake 3.28+ features, CMakePresets, C++20 modules, find_package, targets, and CI/CD.
-
CMake find_package: CONFIG vs MODULE, Search Paths and Errors
How CMake find_package really searches: MODULE-then-CONFIG order, CMAKE_PREFIX_PATH and <Pkg>_ROOT, imported targets, FindBoost removal, and fixes for each error.
-
CMake Targets: PUBLIC, PRIVATE and INTERFACE Visibility and Transitive Dependencies
Modern CMake targets: add_executable/add_library, target_* commands, visibility, transitive deps, OBJECT libs, aliases—multi-library project.