Dienstag, 17. Juli 2007
KDE 4 Windows - KDElibs
Dies ist keine reine Übersetzung von [3]: ich wollte natürlich auch für mich das einmal ausprobieren.
Im Großen und Ganzen bleibt dieser Artikel jedoch eine einfache Übersetzung dieser Seite:

Vorbereitungen

Die Tools

Der Klarheit halber hier noch einmal ein paar benötigte Tools:
CMake - Ein Ersatz für die GNU-Autotools
Ausprobiert habe ich alles mit CMake für Windows!!!!
MinGW - Die GCC für Windows.
Obwohl sie unter Cygwin ebenfalls vorhanden und (bei mir) installiert ist, bin ich erstmal der Ansage
gefolgt und habe MinGW extra installiert.
TortoiseSVN - Ein Windows SVN-client der in den Explorer integriert ist. svn ist natürlich ebenfalls unter Cygwin
verfügbar, der Vollständigkeit halber kommt jedoch auch hier ein Cygwin-unabhängiges Tool zur Anwendung

Zum einfachen Aufsetzen einer Build-Umgebung gibt es den KDEwin-installer, den man sich hier herunterladen kann.
Persönlich erachte ich es für sinnvoller die obigen drei Tools _nicht_ mit dem Installer zu installieren, Download / Installation sind auch ohne
den Installer leicht zu bewältigen und sind so außerdem auch transparenter als mit dem Installer.
Der Installer weist einen Button Settings auf:
Dort kann man das Installationsverzeichnis (bei mir D:\cygopt\kde-utils) und das temporäre Download-Verzeichnis einstellen.
(Die Option "nested directory tree" auf 'aus' gestellt lassen).
Mit dem Installer sollten jedoch die folgenden Sachen ausgewählt werden:
(Achtung dependencies - diese Felder wählen nur alle benötigten Pakete aus, installieren selbst jedoch nichts)

kdesupport-mingw
win32libs

Der Installer wählt alle Abhängigkeiten automatisch aus und installiert diese dann.
Den Installer anstellen, und erstmal ein bisschen Spider Solitaire zocken, Kaffee kochen oder essen gehen.

Die Umgebungsvariablen

Um die passenden Umgebungsvariablen zu setzen, entweder in der Windows Systemsteuerung auswählen: System->Erweitert->Umgebungsvariablen.
Dann dort im oberen Bereich die Variablen hinzufügen. Man beachte hierbei die Installationspfade von CMake, MinGW und den KDE-Bibliotheken.
Um einfach einmal eine kleine Übersicht zu geben, habe ich hier einmal die für mich zutreffenden Variablen angegeben:

DBUSDIR=D:\cygopt\kde-utils
KDEDIRS=D:\cygopt\kde-install;D:\cygopt\kde-utils
KDEWIN_DIR=D:\cygopt\kde-utils
PATH=D:\cygopt\kde-utils\bin;D:\cygopt\kde-install\bin; D:\cygopt\kde-install\lib;C:\mingw\bin
QT_PLUGIN_PATH=D:\cygopt\kde-install\lib\kde4\plugins; D:\cygopt\kde-utils\plugins
STRIGI_HOME=D:\cygopt\kde-utils
XDG_DATA_DIRS=D:\cygopt\kde-utils\share;D:\cygopt\kde-install\share

Hat man diese Übung ebenfalls erledigt, so fehlen nur noch die tatsächlichen Quellen.

Herunterladen der Quellen

Im Explorer einen neuen Ordner anlegen und hineinwechseln, nach einem Rechtsklick auf SVN Checkout klicken und folgende Zeile angeben:
svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs . Danach ist wieder einmal warten angesagt.
Für alle Benutzer von Kommandozeilentools gilt natürlich folgendes:
svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs
Gleichzeitig sollte man einen Build-Ordner sowie ein Installationsziel anlegen. Diese werden im Build-Vorgang dann benötigt.

Zusammenfassung

Bis jetzt sollten alle Tools installiert sein, der KDE-Installer sollte alle notwendigen Bibliotheken (bsw. QT4.3) installiert haben.
Die Quellen der KDElibs sollten auf dem neuesten Stand sein.
Es sollten einige weitere Ordner hinzugefügt worden sein: ein Build-Ordner, ein Installations-Ordner sowie natürlich ein Quell-Ordner.

Der Build-Vorgang

Konfigurieren

Wie bei normalen GNU-Autotools auch, wird ein Vorgang benötigt, der die Build-Umgebung nach allen verfügbaren und nicht verfügbaren Headern, Bibliotheken
und Compilern durchsucht. Diese Aufgabe übernimmt in diesem Fall CMake.
Man öffnet eine Windows-Eingabeaufforderung und wechselt in das Build-Verzeichnis und gibt folgende Zeile ein:

cmake ..\kde-src -G "MinGW Makefiles" -DCMAKE_INSTALL_PREFIX=D:\cygopt\kde-install -DCMAKE_INCLUDE_PATH=D:\cygopt\kde-utils\include -DCMAKE_LIBRARY_PATH=D:\cygopt\kde-utils\lib

Wenn Cmake ordentlich beendet wird, sollte das Build-Verzeichnis schon teilweise gefüllt sein und insbesondere eine Datei Makefile
aufweisen. Wenn letzteres nicht der Fall ist, cmake aber trotzdem ordentlich beendet wurde, einfach obige Zeile noch einmal ausführen.
Dieser Vorgang dauert ein wenig, jedoch kein Vergleich zu dem was noch kommt ;-)

Make und Make install

Der wohl größte Teil der Zeit wird für die Übersetzung benötigt - Das kann gut und gern 2h dauern. Dabei ist der Befehl doch so einfach:
mingw32-make
Es sollte bis auf den Zeitaufwand ohne Probleme durchlaufen.
Danach noch die Installation:
mingw32-make install

Zusammenfassung

Außer kleineren Unregelmäßigkeiten (Das Verwirrspiel mit den Umgebungsvariablen ist ziemlich komisch) funktionierte der Build relativ unproblematisch
Was mich bei meinen Recherchen aber ein wenig gewundert hat, ist wie wenig Material/Fehler es bei der Portierung zu geben scheint. Entweder
es gibt niemanden der KDE unter Windows bauen will, oder es gibt einfach kaum Fehler :-).

Fragen

- Wie integriert man den Build-Vorgang in Cygwin?

Quellen

[1] http://developer.kde.org/build/trunk.html
[2] http://techbase.kde.org/Getting_Started/Build/KDE4
[3] Techbase.kde.org Getting Started

... comment