Seminare
Seminare

CMake für Einsteiger

Seminar - GFU Cyrus AG

Am Ende des Seminars sind die Teilnehmenden in der Lage, eigene CMake-Projekte zu erstellen, zu konfigurieren und zu verwalten sowie fortgeschrittene CMake-Konzepte anzuwenden.
Termin Ort Preis*
27.10.2025- 28.10.2025 Köln 1.630,30 €
27.10.2025- 28.10.2025 online 1.630,30 €
*Alle Preise verstehen sich inkl. MwSt.

Detaillierte Informationen zum Seminar

Inhalte:
  • Einführung in CMake
    • Was ist CMake: Erklärung der Funktion und Bedeutung von CMake in der Softwareentwicklung.
    • Vorteile von CMake: Diskussion der Vorteile von CMake gegenüber anderen Build-Systemen und Makefiles.

  • Installation und Einrichtung
    • Installation von CMake: Schritt-für-Schritt-Anleitung zur Installation von CMake auf verschiedenen Betriebssystemen (Windows, macOS, Linux).
    • Einrichtung der Entwicklungsumgebung: Konfiguration der Entwicklungsumgebung und Integration von CMake in gängige IDEs wie Visual Studio, CLion und VS Code.

  • Grundlegende CMake-Syntax und -Befehle
    • Erstellen einer einfachen CMakeLists.txt: Einführung in die grundlegenden Befehle und die Struktur einer CMakeLists.txt-Datei.
    • Verstehen von Zielen und Quellen: Definition von Zielen (Targets) und Hinzufügen von Quell- und Header-Dateien zum Build.

  • Projektstruktur und Organisation
    • Organisieren von Projekten: Best Practices zur Organisation von Projekten mit CMake, einschließlich der Strukturierung von Quellverzeichnissen und modularen CMakeLists.txt-Dateien.
    • Einfache Projekte und Hierarchien: Erstellung und Verwaltung einfacher Projekte und hierarchischer Projekte mit mehreren Unterverzeichnissen.

  • Erstellung von Bibliotheken
    • Statische und dynamische Bibliotheken: Anleitung zur Erstellung statischer (STATIC) und dynamischer (SHARED) Bibliotheken mit CMake.
    • Nutzung von Bibliotheken: Erklärung, wie man Bibliotheken in Projekten einbindet und nutzt, einschließlich der Nutzung von target_link_libraries().

  • Konfigurationsoptionen und Compiler-Einstellungen
    • Festlegen von Build-Optionen: Verwendung von option() und set() zur Definition und Konfiguration von Build-Optionen und -Variablen.
    • Compiler-Einstellungen: Konfiguration von Compiler-Flags und Optimierungen mit target_compile_options() und target_compile_definitions().

  • Externe Abhängigkeiten und Paketverwaltung
    • Einbindung externer Bibliotheken: Nutzung von find_package() und ExternalProject_Add() zur Integration externer Bibliotheken und Projekte.
    • Paketverwaltung mit CMake: Einführung in die Verwaltung von Abhängigkeiten mit FetchContent und anderen CMake-Modulen.

  • Plattformübergreifende Entwicklung
    • Plattformübergreifende Builds: Best Practices zur Erstellung plattformübergreifender CMake-Projekte, einschließlich der Nutzung von Generatoren und plattformspezifischen Einstellungen.
    • Verwendung von Toolchains: Anleitung zur Erstellung und Nutzung von Toolchain-Dateien für Cross-Compiling und spezielle Build-Umgebungen.

  • Testing und Continuous Integration (CI)
    • Einführung in CTest: Nutzung von CTest zur Erstellung und Ausführung von Unit-Tests und Integrationstests.
    • Integration mit CI-Tools: Anleitung zur Integration von CMake-Projekten in CI/CD-Pipelines mit Tools wie Jenkins, GitHub Actions und GitLab CI.

  • Erstellung und Verteilung von Paketen
    • Erstellen von Installationspaketen: Nutzung von CMake-Befehlen zur Erstellung von Installationspaketen für verschiedene Plattformen.
    • Distribution und Paketverwaltung: Einführung in die Distribution von CMake-Projekten und die Nutzung von Paketmanagern wie Conan und vcpkg.

Dauer/zeitlicher Ablauf:
2 Tage
Zielgruppe:
Dieses Seminar richtet sich an Softwareentwickler, Build-Manager und Systemadministratoren, die CMake zur Erstellung, Konfiguration und Verwaltung von Build-Prozessen nutzen möchten. Grundlegende Kenntnisse in C++ und Build-Systemen sind hilfreich, aber nicht zwingend erforderlich.
Seminarkennung:
91104
Nach unten
Nach oben
Wir setzen Analyse-Cookies ein, um Ihre Zufriedenheit bei der Nutzung unserer Webseite zu verbessern. Diese Cookies werden nicht automatisiert gesetzt. Wenn Sie mit dem Einsatz dieser Cookies einverstanden sind, klicken Sie bitte auf Akzeptieren. Weitere Informationen finden Sie hier.
Akzeptieren Nicht akzeptieren









Um Spam abzuwehren, geben Sie bitte die Buchstaben auf dem Bild in das Textfeld ein:

captcha



Bei der Verarbeitung Ihrer personenbezogenen Daten im Zusammenhang mit der Kontaktfunktion beachten wir die gesetzlichen Bestimmungen. Unsere ausführlichen Datenschutzinformationen finden Sie hier. Bei der Kontakt-Funktion erhobene Daten werden nur an den jeweiligen Anbieter weitergeleitet und sind nötig, damit der Anbieter auf Ihr Anliegen reagieren kann.







Um Spam abzuwehren, geben Sie bitte die Buchstaben auf dem Bild in das Textfeld ein:

captcha