Suche…


Syntax

  • # Packen Sie ein Build-Verzeichnis
    pack [PFAD]
  • # Verwenden Sie einen bestimmten Generator
    cpack -G [GENERATOR] [PFAD]
  • # Optionale Überschreibungen angeben
  • cpack -G [GENERATOR] -C [KONFIGURATION] -P [PACKAGE NAME] -R [PACKAGE-VERSION] -B [PACKAGE-VERZEICHNIS]

Bemerkungen

CPack ist ein externes Tool, das das schnelle Packen von erstellten CMake-Projekten ermöglicht, indem alle erforderlichen Daten direkt aus den Dateien CMakeLists.txt und den verwendeten Installationsbefehlen wie install_targets() .

Damit CPack ordnungsgemäß funktioniert, muss die Datei CMakeLists.txt Dateien oder Ziele enthalten, die mithilfe des install installiert werden sollen.

Ein minimales Skript könnte so aussehen:

# Required headers
cmake(3.0)

# Basic project setup
project(my-tool)

# Define a buildable target
add_executable(tool main.cpp)

# Provide installation instructions
install_targets(tool DESTINATION bin)

Erstellen eines Pakets für ein erstelltes CMake-Projekt

Um ein weitervertreibbares Paket (z. B. ein ZIP-Archiv oder ein Setup-Programm) zu erstellen, genügt es normalerweise, CPack mit einer dem Aufruf von CMake sehr ähnlichen Syntax aufzurufen:

cpack path/to/build/directory

Abhängig von der Umgebung werden dadurch alle für das Projekt erforderlichen / installierten Dateien gesammelt und in einem komprimierten Archiv oder einem selbstentpackenden Installationsprogramm abgelegt.

Auswahl eines zu verwendenden CPack Generators

Um ein Paket mit einem bestimmten Format zu erstellen, können Sie den zu verwendenden Generator auswählen.

Ähnlich wie bei CMake kann dies mit dem Argument -G geschehen:

cpack -G 7Z .

Wenn Sie diese Befehlszeile verwenden, wird das erstellte Projekt im aktuellen Verzeichnis im 7-Zip-Archivformat gepackt.

Zum Zeitpunkt des Schreibens unterstützt CPack Version 3.5 standardmäßig folgende Generatoren:

  • 7Z 7-Zip-Dateiformat (Archiv)
  • IFW Qt Installer Framework (ausführbare Datei)
  • NSIS Null Soft Installer (ausführbare Datei)
  • NSIS64 Null Soft Installer (64-Bit, ausführbar)
  • STGZ Selbstentpackende Tar GZip-Komprimierung (Archiv)
  • TBZ2 Tar BZip2-Komprimierung (Archiv)
  • TGZ Tar GZip-Komprimierung (Archiv)
  • TXZ Tar XZ-Komprimierung (Archiv)
  • TZ Tar Compression-Komprimierung (Archiv)
  • WIX MSI-Dateiformat über WiX-Tools (ausführbares Archiv)
  • ZIP ZIP-Dateiformat (Archiv)

Wenn kein expliziter Generator bereitgestellt wird, versucht CPack, die beste verfügbare Leistung in Abhängigkeit von der tatsächlichen Umgebung zu ermitteln. Beispielsweise wird es bevorzugt, eine selbstextrahierende ausführbare Datei unter Windows zu erstellen und ein ZIP-Archiv nur zu erstellen, wenn kein geeignetes Toolset gefunden wird.



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow