Scribus-SVN-Versionen mit CMake komplilieren

CMake wurde als Ersatz für das Autotools-System für Scribus ab 1.3.4cvs ausgewählt. Zwar ist noch nicht sicher, ob diese Entscheidung endgültig ist, doch es sieht so aus als sei damit leicht zu arbeiten. Es ist plattformübergreifend verfügbar, wird gut unterstützt, und das KDE-Projekt hat sich dafür entschieden, so daß wir sicher sein können, daß es in absehbarer Zukunft gepflegt wird.

Sie benötigen die CVS-Version von CMake (2.3) oder CMake 2.4, sobald dies veröffentlicht worden ist!

Kompilieren mit CMake in aller Kürze
Bitte beachten Sie, daß ein "Out-of-source-Build" empfohlen wird. Trotzdem ...

Wenn Sie sich im Scribus-Verzeichnis befinden:

Einige Optionen, welche die Scribus-CMake-Dateien kennen (es werden noch mehr hinzukommen!):
 * WANT_DEBUG=1: Erstellt eine Debug-Version und verwendet -O0 -g3 statt -O2 (Dies ist momentan die Standardeinstellung und kann nur abgestellt werden, wenn Sie die Datei CMakeFiles.txt bearbeiten)
 * WANT_CAIRO=1: Läßt CMake nach Cairo suchen und kompiliert damit anstatt mit LibArt_LGPL. Bitte beachten Sie, daß wir die Cairo-Version noch als im Beta-Status befindlich betrachten.
 * WANT_LIBART=1 (Standardeinstellung): Läßt CMake nach LibArt_LGPL anstatt Cairo suchen und kompiliert es damit.

Wenn Sie also eine Debug-Version mit Cairo kompilieren wollen, dann sollte Ihre Eingabe in etwa so aussehen:

Außerhalb des Quellverzeichnisses kompilieren ("Out-of-source-builds")
Einer der Vorteile von CMake ist die Möglichkeit, einen sogenannten "Out-of-source-build" durchzuführen. Was ist das? Er ermöglicht es Ihnen, eine Anwendung zu kompilieren, ohne daß irgend etwas in das Verzeichnis geschrieben wird, in dem sich die Quelltexte befinden. Das bedeutet, daß ihr Quellverzeichnis sauber bleibt, und zwar immer. Auf diese Weise lassen sich ihre Quellen schneller und einfacher aktuell halten, und Sie können mehrere Varianten aus dem gleichen Quelltext erzeugen.

Um Quelltexte auf diese Weise zu kompilieren, benötigen Sie ein neues Zielverzeichnis für die Installation. Angenommen, Ihre Quellen befinden sich in:

Erstellen Sie folgendes Verzeichnis:

Anstatt nun etwa

auszuführen, würden Sie statt dessen in das Zielverzeichnis wechseln und

Einfach!

Die Kompilierung abschließen
Wenn dieser Vorgang erfolgreich abgeschlossen ist, führen Sie einfach  aus.

Das auf CMake basierende Buildsystem ist noch sehr neu für Scribus, und es wird sich noch verändern und Verbesserungen benötigen. Bitte berichten Sie über Probleme auf der Mailingliste oder dem Bugtracker.

Die Liste der noch zu erledigenden Aufgaben für dieses Buildsystem ist noch lang. Sie enthält unter anderem:
 * Die Überprüfung auf plattformübergreifende Funktionalität
 * Die Überprüfung, ob es gleichermaßen unter verschiedenen Unix-Varianten funktioniert
 * Die Überprüfung auf 64-Bit-Distributionen
 * Unterstützung für Win32 und Mac OSX

Das Kompilieren schlägt bei installierten Qt4-Bibliotheken fehl
Systeme, auf denen Qt3 und Qt4 parallel installiert sind:

und  aus Qt4 befinden sich im , was dazu führt, daß das Kompilieren scheitert. So läßt sich das Problem lösen:

Entfernen Sie vorherige Konfigurationsoptionen aus dem Cache, indem Sie  ausführen.

Ändern Sie dann die -Variable, für mein Gentoo etwa:

Rufen Sie dann cmake erneut auf:

Einen Tarball zum Verteilen erstellen
Um einen Tarball zu erstellen, haben Sie bisher folgendes eingegeben:. Nun rufen Sie  oder   auf, um ein Quellcode-Archiv zu erzeugen. CMake 2.4.1 unterstützt nur gzip, aber bzip2 ist mit der CVS-Version von CMake möglich.