Programmierung

Einfaches CPack Beispiel

Ich habe schon mal ein sehr einfaches Beispiel für CMake beschrieben. Nun möchte ich hier ein einfaches Beispiel für CPack beschreiben.

Zuerst brauchen wir einen Quelltext.

main.cpp

#include <iostream>
 
int main(int argc, char **argv)
{
    std::cout << "Hallo :)" << std::endl;
    return 0;
}

Und wir brauchen eine CMakeLists.txt Datei.

CMakeLists.txt

cmake_minimum_required(VERSION 2.8)

project(cpacktest)

add_executable(${PROJECT_NAME} main.cpp)
install(TARGETS ${PROJECT_NAME} DESTINATION distance)

set(CPACK_GENERATOR "DEB")
set(CPACK_DEBIAN_PACKAGE_MAINTAINER "My Self")

include(CPack)

Da ich ja schon in dem anderen Artikel einige Befehle beschrieben habe, möchte ich hier nur noch auf die noch nicht beschriebenen Befehle eingehen.

INSTALL

Mit diesem Befehl wird CMake / CPack gesagt, welche Datei / welches Ziel wohin kopiert werden soll (bei einer Installation). In meinem Fall möchte ich mein Ziel ${PROJECT_NAME} in den Ordner distance abspeichern (das kann man im Bild weiter unten sehen, ich habe es von dem Beispiel aus dem CMake Wiki abgekupfert).

INCLUDE(CPack)

include(CPack) fügt das Modul von CPack ein. Laut CMake Wiki / Dokumentation muss dieser Befehl ganz unten stehen.

Da ich hier den DEB CPack Generator nutze, muss ich auch den Wert der Variablen CPACK_DEBIAN_PACKAGE_MAINTAINER setzen.

Wenn ich mit der CMakeLists.txt fertig bin, dann muss ich nur noch folgende Befehle in die Kommandozeile eingeben und schon purzelt ein Debian Paket heraus:

cmake .
make
make package

Mit einem Debian-Paket-Manager kann ich mir das Paket nun auch mit Hilfe der GUI anschauen.

cpack-debian-package

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.