Copyright © 2005 Michael Pyne
Copyright © 2005 Carlos Woelz
Es ist erlaubt, dieses Dokument zu kopieren, zu vertreiben und/oder zu ändern gemäß den Bedingungen der GNU Free Documentation Licence, Version 1.1 oder irgend einer späteren Version, wie sie von der Free Software Foundation veröffentlicht wurde; ohne die invarianten Abschnitte, ohne Texte auf der vorderen Umschlagseite, und ohne Texte auf der hinteren Umschlagseite. Eine Kopie der Lizenz findet sich im Abschnitt "GNU Free Documentation License".
Das Skript kdesvn-build kompiliert und installiert KDE direkt aus den Quelltexten des KDE-SVN.
Inhaltsverzeichnis
Tabellenverzeichnis
Das Skript kdesvn-build hilft Benutzern bei der Installation von KDE aus dem SVN. Bite beachten Sie auch das Skript kde-build, welches im KDE-Modul "kdesdk" enthalten ist.
An dieser Stelle sollen die Syntax der Konfigurationsdatei, die Optionen und die Befehlszeilenparameter von kdesvn-build beschrieben werden, die nötig sind, um KDE aus den Quelltexten zu installieren. Dies schließt auch die Schritte ein, die Sie mit anderen Werkzeugen erledigen müssen - also Schritte, die nicht automatisch von kdesvn-build durchgeführt werden.
In diesem Kapitel wird erklärt, wie Sie mit Hilfe von kdesvn-build die entsprechenden Module aus dem KDE-Quellcodearchiv herunterladen und kompilieren. Desweiteren werden einige Grundlagen zur Struktur des KDE SVN und die nötigen Schritte vor dem Ausführen des Skripts erklärt.
Alle in diesem Kapitel angesprochene Punkte werden detaillierter in dem Dokument Building KDE from Source Step by Step Guide auf der Webseite des KDE Qualitäts-Sicherungsteam erklärt. Wenn Sie KDE zum ersten Mal kompilieren, sollten Sie dieses Dokument lesen und bei Fragen als Referenz heranziehen. Darin finden Sie auch Informationen zu Paketierungs-Hilfsprogrammen, Kompilier-Voraussetzungen, häufigen Stolperfallen und allgemeinen Strategien zur Verwendung Ihrer neuen KDE-Installation.
Zum Herunterladen und Kompilieren von KDE sollten Sie ein normales Benutzerkonto verwenden. Wenn Sie bereits einige KDE-Programme installiert haben, sollten Sie sogar ein neues, separates Benutzerkonto erzeugen und KDE unter Verwendung des neuen Benutzers installieren und ausführen. Der Vorteil an dieser Vorgehensweise ist, dass Sie die bestehende KDE-Installation nicht zerstören und das Sie normal weiterarbeiten können, falls mit der neuen Installation etwas nicht funktioniert.
Sie können die Installation später immer noch systemweit als root durchführen. Das geht allerdings über den Rahmen dieses Handbuchs hinaus. Es wird davon ausgegangen, dass Sie wissen was Sie tun, wenn Sie eine systemweite Installation durchführen.
Bevor Sie kdesvn-build (oder eine andere Kompiliermethode) verwenden, müssen Sie die Entwickler-Werkzeuge und -Bibliotheken für KDE installieren. Sie benötigen Qt 3.3.0 oder neuer, Automake 1.8, Autoconf 2.5x (besser 2.57 oder neuer, weil es für ältere Versionen einen bekannten Bug gibt), den Subversion-Client (svn), den gcc-Compiler mit C++-Unterstützung, libxml2, openssl, libbz2 und einige weitere. Ein vollständige Liste finden Sie unter KDE Compilation Requirements. Üblicherweise werden die benötigen Hilfsprogramme und Bibliotheken mit Ihrer Distribution mitgeliefert und müssen evtl. nur nachinstalliert werden.
Einige der benötigten Pakete werden von den Distributoren in Bibliotheken, Programmdateien oder Werkzeuge und Entwickler-Pakete unterteilt. In diesen Fällen benötigen Sie wenigstens die Programmdateien und das Entwicklungs-Paket. Wenn Sie unsicher sind, installieren Sie am besten alle Pakete zu einem Programm. Die benötigen Bibliotheken sind abhängig von dem KDE-Modul, welches Sie installieren möchten. Unter Building KDE from Source Step by Step Guide finden Sie mehr Details über die einzelnen Hilfsprogramme und Techniken zur Installation der Abhängigkeiten.
Wahrscheinlich haben Sie kdesvn-build bereits auf Ihrem System installiert. Nun müssen Sie die Konfigurationsdatei für kdesvn-build mit dem Namen .kdesvn-buildrc
erzeugen. Die Datei sollte in Ihrem persönlichen Ordner (~/) liegen und entält alle benötigten Optionen und Einstellungen, Compiler-Optionen, den Speicherort der Quelldateien, das Installationsziel, die zu installierenden Module und so weiter. Die Voreinstellungen finden Sie in der Datei kdesvn-buildrc-sample
. Weitere Informationen zur Syntax der Konfigurationsdatei können Sie in „Festlegen der Einstellungen“ und Kapitel 4, Das Format der Datei .kdesvn-buildrc nachlesen.
Es ist nicht schwer, die neueste Version von kdesvn-build zu erhalten. Öffnen Sie die Seite kdesdk/scripts unter websvn.kde.org. In dem Ordner kdesdk/scripts finden Sie eine Liste der Dateien. Klicken Sie auf kdesvn-build und laden Sie die neueste Version herunter; ebenso laden Sie auch die Datei kdesvn-buildrc-sample
auf Ihren Rechner. Machen Sie das Skript ausführbar und sorgen Sie dafür, dass es über die Umgebungsvariable PATH gefunden werden kann.
Damit das Skript funktioniert, müssen Sie die Datei .kdesvn-buildrc
in Ihrem persönlichen Ordner haben, in der die allgemeinen Einstellungen festgelegt sind.
Benutzen Sie die Datei kdesvn-buildrc-sample
als Vorlage und stellen Sie die allgemeinen Optionen und die Module ein, die Sie installieren möchten.
Wählen Sie den Server aus, den Sie für das Herunterladen der SVN-Arbeitskopie verwenden möchten. Den Server legen Sie mit der globalen Einstellung svn-server fest. Voreingestellt ist der Server für anonymes SVN: svn://anonsvn.kde.org, aber Sie können dies ändern, wenn Sie einen KDE SVN-Zugang haben oder es einen Spiegel in Ihrer Nähe gibt.
Geben Sie besonders acht auf die globalen Variablen kdedir und qtdir. kdedir legt den Zielordner fest, in dem KDE installiert wird (voreingestellt ist ~/kde
) und qtdir legt fest, wo Qt installiert ist bzw. ob es dort kompiliert und installiert werden soll (voreingestellt ist ~/kdesvn/build/qt-copy
). Die hier festgelegten Einstellungen brauchen Sie später nochmal, um die Umgebungsvariablen zum Ausführen des neuen KDE richtig zu setzen. Prüfen Sie, ob die aufgeführten Module diejenigen sind, die Sie wirklich installieren möchten. Mit den Voreinstellungen aus kdesvn-buildrc-sample
erhalten Sie eine weitgehend vollständige KDE-Installation. Speichern Sie Ihre Einstellungen in die Datei .kdesvn-buildrc
in Ihrem persönlichen Ordner.
Wenn Sie Feineinstellungen an .kdesvn-buildrc
vornehmen möchten, lesen Sie bitte in Kapitel 4, Das Format der Datei .kdesvn-buildrc die detaillierten Informationen über alle Konfigurations-Optionen nach.
Sie können das Skript nun ausführen. Melden Sie sich in einem Terminal-Fenster als der Benutzer an, den Sie zum Kompilieren und Installieren des neuen KDE verwenden möchten, und führen Sie das Skript aus:
%
su-
Benutzername
%
kdesvn-build
Das Skript sollte nun mit dem Herunterladen der Quellen beginnen und sie kompilieren. Oft schlägt der erste Versuch, KDE zu kompilieren, fehl. Geben Sie nicht auf! Prüfen Sie die Protokoll-Dateien; möglicherweise fehlt Ihnen noch ein Hilfsprogramm oder entsprechende Entwickler-Pakete. Der Pfad zu den Protokollen ist in der Einstellung log-dir in Ihrer Konfigurationsdatei festgelegt. Manchmal passiert es auch, dass ein KDE-Modul unstabil ist und sich daher nur unter erheblichem Aufwand kompilieren lässt. Haben Sie Geduld, derartige Probleme werden in der Regel sehr schnell behoben. Weitere Dinge, die häufig fehlschlagen, sowie die Lösungen und weitere grundsätzliche Tipps und Tricks zum Kompilieren von KDE finden Sie im Building KDE from Source Step by Step Guide.
Im Folgenden wird davon ausgegangen, dass Sie einen separaten Benutzer zum Kompilieren und Installieren von KDE verwendet haben. Des Weiteren wird davon ausgegangen, dass Sie bereits eine KDE-Version installiert haben. Wenn dies der Fall ist, muss das neue KDE Vorrang vor der alten Version erhalten. Bearbeiten Sie die Umgebungsvariablen entsprechend.
Öffnen Sie die Datei .bash_profile
in Ihrem persönlichen Ordner oder erzeugen Sie eine neue, falls sie noch nicht existiert. Am Ende der Datei fügen Sie folgendes ein:
KDEDIR=(pfad zu kdedir) KDEDIRS=$KDEDIR PATH=$KDEDIR/bin:$QTDIR/bin:$PATH LD_LIBRARY_PATH=$KDEDIR/lib:$LD_LIBRARY_PATH export KDEDIRS PATH LD_LIBRARY_PATHWenn Sie das Modul qt-copy installiert haben, fügen Sie dies stattdessen ein:
QTDIR=(pfad zu qtdir) KDEDIR=(pfad zu kdedir) KDEDIRS=$KDEDIR PATH=$KDEDIR/bin:$QTDIR/bin:$PATH MANPATH=$QTDIR/doc/man:$MANPATH LD_LIBRARY_PATH=$KDEDIR/lib:$QTDIR/lib:$LD_LIBRARY_PATH export QTDIR KDEDIRS PATH MANPATH LD_LIBRARY_PATH
Wenn Sie keinen separaten Benutzer verwenden, ändern Sie die Umgebungsvariable $KDEHOME
in .bash_profile
für die neue Umgebung.
export KDEHOME="${HOME}/.kde-svn" # Create it if needed [ ! -e ~/.kde-svn ] && mkdir ~/.kde-svn
Falls das KDE-Menü später leer oder völlig überfüllt mit Programmen Ihrer Distribution sein sollte, müssen Sie unter Umständen die xdb-Umgebungsvariable in .bash_profile
anpassen:
XDG_CONFIG_DIRS="/etc/xdg" XDG_DATA_DIRS="${KDEDIR}/share:/usr/share" export XDG_CONFIG_DIRS XDG_DATA_DIRS
Nun sollte die Umgebungsvariablen korrekt eingestellt sein. Stellen Sie nun sicher, dass die richtige Version des Start-Skripts startkde verwendet wird:
Öffnen Sie die Datei .xinitrc
(oder .xsession
, abhängig von Ihrer Distribution) in Ihrem persönlichen Ordner. Erzeugen Sie sie, falls nötig. Fügen Sie die folgende Zeile hinzu:
exec ${KDEDIR}/bin/startkde
Starten Sie nun Ihre neues KDE: In BSD und Linux mit Unterstützung für virtuelle Terminals können Sie die Tastenkombination Strg+Alt+F1...F12 zum wechseln zwischen den Terminals verwenden. Auf diese Weise können Sie mehrere Arbeitsumgebungen gleichzeitig ausführen. Die ersten sechs Terminals sind Text-Terminals, die folgenden sechs sind graphische Terminals.
Falls beim Systemstart der graphische Anmeldungsmanager erscheint, können Sie Ihr neues KDE dennoch verwenden, auch wenn es nicht in der Liste für die graphische Anmeldung aufgeführt ist. Drücken Sie Strg+Alt+F2 um zu einem Text-Terminal zu gelangen. Melden Sie sich als der separate KDE-Benutzer an und geben Sie folgendes ein:
startx -- :1
Sie können das frisch aus den Quellen installierte und das alte KDE gleichzeitig laufen lassen! Melden Sie sich als regulärer Benutzer wie gewohnt an und starten Sie KDE. Drücken Sie dann Strg+Alt+F2 (oder F1, F3, ...) um zu einem Text-Terminal zu gelangen. Melden Sie sich mit dem separaten KDE-Benutzer an und geben Sie "startx -- :1" ein. Mit der Tastenkombination Strg+Alt+F6 (oder F7, F8, etc.) können Sie zwischen den verschiedenen KDE-Sitzungen hin und her wechseln. Nun können Sie das neue KDE testen und wissen, dass Sie jederzeit zu Ihrer alten, stabilen Version zurückkehren können.
kdesvn-build beinhaltet die folgenden Funktionen und Besonderheiten:
Automatisches Herunterladen und Aktualisieren der nötigen Module aus dem SVN-Archiv.
Zeitmessung für den Kompiliervorgang der Module.
Automatisches Neu-Kompilieren von Modulen, die inkrementelles make verwenden (welches nach verschiedenen Arten von commits fehleranfällig ist).
Fortsetzen eines vorherigen Skript-Durchlaufs und Starten des Kompiliervorgangs mit einem bestimmten Modul.
Die voreingestellten Optionen sind gut geeignet für die Installation von KDE aus dem SVN für einen einzelnen Benutzer.
Direkte Unterstützung für Unsermake.
Benutzung der Tilde als Platzhalter in den Optionen. Beispielsweise ist Folgendes ist möglich:
qtdir ~/kdesvn/build/qt-copy
Kompilier-, Quell- und Protokoll-Ordner sind frei einstellbar.
Automatisches herrichten einer Kompilierumgebung, in der der Kompilier-Ordner ungleich dem Quell-Ordner ist. Dadurch wird der Quell-Ordner "sauber" gehalten. Die einzige Ausnahme bildet hier qt-copy, welches nicht für diese Art des Kompilierens vorgesehen ist (es sei denn Sie möchten den Hack „qt with a separate build directory hack“ ausprobieren).
Es können sowohl globale Einstellungen für alle Module als auch spezifische Einstellungen für bestimmte Module vorgenommen werden.
In manchen Fällen verlieren die autotools die Synchronisation mit dem Quell-Ordner; daher können Sie erzwingen, dass bestimmte Module vollständig neu kompiliert werden. Dazu müssen Sie im Quell-Ordner des fraglichen Moduls eine Datei namens .refresh-me anlegen oder kdesvn-build mit der Option --refresh-build
aufrufen.
Es können verschiedene Umgebungsvariablen benutzt werden, die den Kompiliervorgang beeinflussen. Dazu gehören unter anderem KDEDIR
, QTDIR
, DO_NOT_COMPILE
und CXXFLAGS
.
Befehls-Protokolle. Alle Protokolle werden durchnummeriert und mit einem Datums-Stempel versehen, sodass Sie pro Skript-Durchlauf ein Protokoll erhalten. Des Weiteren wird mit jedem Skript-Durchlauf ein symbolischer Link namens latest erzeugt, der auf das jeweils letzte Protokoll verweist.
Wenn Sie KDE für einen Benutzer anstatt systemweit installieren (wofür Sie Systemverwalter-Rechte benötigen würden), können Sie das Skript zum Installieren verwenden. Ich (der Autor von kdesvn-build) habe den Code des Skripts nicht begutachtet und es macht gebrauch von der Funktion system()
; Sie sollten das Skript lieber nicht als Systemverwalter ausführen.
Sie können make-install-prefix verwenden, um dem Kommando make install einen Befehl voranzustellen. Dies ist z. B. für die Verwendung von sudo nützlich.
Mit Hilfe der Option apidox können Sie veranlassen, dass die API-Dokumentation für einige Module erzeugt und installiert wird.
Sie können auch nur einzelne Teile von KDE aus einem SVN-Modul herunterladen lassen. Beispielsweise könnten Sie nur taglib aus kdesupport herunterladen, oder nur K3b aus extragear/multimedia. Das Skript wird automatisch kde-common mit einbeziehen, falls dies zum Kompilieren nötig ist.
Sie können alle Vorgänge „vorgaukeln“ anstatt sie wirklich ausführen zu lassen. Benutzen Sie dazu die Option --pretend
oder -p
und das Skript wird eine detaillierte Beschreibung alle Befehle ausgeben, die es ausführen würde, ohne tatsächlich etwas zu unternehmen.
Es ist möglich, verschiedene SVN-Verzweigungen für bestimmte Module zu verwenden. Die Unterstützung hierfür ist noch nicht ganz vollständig, sie können aber die zu verwendende Verzweigung (branch) mit der Einstellung module-base-path festlegen.
Dinge, die kdesvn-build NICHT macht:
Auffinden des schnellsten KDE SVN-Spiegelservers. Derzeit wird mit dem Skript noch nichtmal eine Liste der Spiegelserver mitgeliefert. Außerdem sollte der Standard-Server problemlos funktionieren.
Ihre Zähne putzen, das müssen Sie schon selbst erledigen ;-)
Das Skript ist sicherlich nicht fehlerfrei - dafür schonmal vorab entschuldigung.
Für die korrekte Funktion benötigt das Skript eine Datei namens .kdesvn-buildrc
in Ihrem persönlichen Ordner. Diese beschreibt unter anderem die KDE-Module, die Sie herunterladen und installieren möchten.
Zuerst werden die globalen Einstellungen wie folgt festgelegt:
globaloption-name option-wert
[...]
end global
Danach folgen eine oder mehrere Modul-Abschnitte, die wie folgt aussehen:
modulemodul-name
option-name option-wert
[...]
end module
modul-name
muss ein Modulname aus dem KDE SVN-Archiv sein (z. B. kdelibs oder kdebase). Einige Optionen überschreiben die globalen Optionen, einige können zusätzlich zu globalen Optionen festgelegt werden und einige globale Optionen lassen sich gar nicht Modul-Spezifisch überschreiben.
Im Folgenden sehen Sie eine alphabetisch geordnete Liste der möglichen Optionen. Klicken Sie auf eine Option, um mehr darüber zu erfahren. Falls eine Option nicht näher dokumentiert ist, schreiben Sie bitte eine E-Mail an den Autor. Die Adresse finden Sie hier.
apidox: Erstellen der API-Dokumentation
apply-qt-patches: Verbessern von Qt-copy mit einigen Patches
binpath: Zum Festlegen der Umgebungsvariable PATH
branch: Zum Herunterladen aus einer bestimmten branch anstelle von /trunk
build-dir: Legt den Kompilier-Ordner festO
checkout-only: Nur bestimmte Teile eines Moduls herunterladen
colorful-output: Farbige Darstellung der Skript-Ausgaben
configure-flags: Legt fest, welche Parameter an configure eines bestimmten Moduls übergeben werden sollen.
cxxflags: Legt den Inhalt der Umgebungsvariable CXXFLAGS
fest
dest-dir: Zum Ändern des Ordner-Namens für ein Modul
disable-agent-check: Verhindert die Prüfung des Status für den SSH-Agenten
do-not-compile: Schließt bestimmte Ordner vom Kompiliervorgang aus
inst-apps: Hiermit werden nur bestimmte Ordner kompiliert und installiert
install-after-build: Hierdurch kann die Installation nach dem Kompilieren verhindert werden
kdedir: Legt den Zielordner für die KDE-Installation fest
libpath: Legt den Inhalt der Umgebungsvariable LD_LIBRARY_PATH
fest
make-install-prefix: Zum Ausführen eines Hilfsprogrammes vor make install (z. B. sudo)
make-options: Übergibt bestimmte Optionen an das Programm make
manual-build: Verhindert das automatische Kompilieren eines Moduls
manual-update: Verhindert das automatische Aktualisieren eines Moduls
module-base-path: Ändert den Pfad, aus dem ein Modul heruntergeladen werden soll (nützlich für SVN-Verzweigungen und -Tags)
niceness: Ändert die Laufzeit-Priorität des Skripts
no-rebuild-on-fail: Verhindert den erneuten Durchlauf von make nach einem Fehler
qtdir: Legt den Pfad zu Qt fest
set-env: Zum Einstellen einer UmgebungsvariableFestlegen
source-dir: Ändert den Pfad für heruntergeladene Quellen
stop-on-failure: Beendet kdesvn-build sobald ein Fehler auftritt
svn-server: Ändert den Server, von dem die Quellen heruntergeladen werden
use-qt-builddir-hack: Legt fest, dass für Qt separate Quell- und Kompilier-Ordner verwendet werden sollen (so wie bei KDE auch)
use-unsermake: Verwendung des erweiterten Kompilier-Systems unsermake
Im Folgenden finden Sie eine Tabelle mit verschiedenen Optionen und einigen Kommentaren dazu. Optionen, die eine globale Option überschreiben, werden auch den entsprechenden Parameter auf der Kommandozeile überschreiben.
Tabelle 4.1. Tabelle der Optionen
Name der Option | Modul -> Globales Verhalten | Anmerkungen |
---|---|---|
apidox | Überschreibt die globale Option | Stellen Sie die Option auf „true“, so wird kdesvn-build die API-Dokumentation für das Modul erzeugen und installieren. Dies funktioniert nur mit Modulen, die den Befehl make apidox unterstützen (inklusive kdelibs, kdebase, koffice und weiteren). |
apply-qt-patches | Überschreibt die globale Option | Diese Option ist nur für qt-copy sinnvoll. Wenn Sie auf einen Wert ungleich Null eingestellt ist, wird das apply-patches-Skript in qt-copy vor dem Kompilieren ausgeführt. Dadurch werden einige inoffizielle Patches auf qt-copy angewandt. Normalerweise sind gerade diese Patches der Grund, qt-copy zu verwenden. Daher sollten Sie diese Option bedenkenlos aktivieren können. Standardmäßig werden die Patches auf qt-copy angewandt. |
binpath | Kann nicht überschrieben werden | Mit dieser Option können Sie die Umgebungsvariable PATH für den Kompiliervorgang festlegen. Diese Option lässt sich nicht mit einer Modul-Option überschreiben. Die Voreinstellung ist |
branch | Überschreibt die globale Option | Mit dieser Option legen Sie fest, dass die Quellen aus einem bestimmten SVN-Branch anstelle von "trunk" heruntergeladen werden sollen. Um beispielsweise KDE 3.4 herunterzuladen, stellen Sie die Option auf "3.4" ein. Beachten Sie, dass einige Module unterschiedliche Namen für ein SVN-Branch verwenden. Hier ist insbesondere aRts zu erwähnen, welches andere Versionsnummern als KDE verwendet. Die mit KDE 3.4 ausgelieferte Version von aRts war beispielsweise 1.4. Das das Herunterladen einer Branch mit dieser Option fehlschlägt, müssen Sie möglicherweise die korrekte Adresse zum Herunterladen manuell eingeben. Verwenden Sie dazu die Option override-url. |
build-dir | Überschreibt die globale Option | Verwenden Sie diese Option zum Ändern des Ordners, in dem die Quellen kompiliert werden sollen. Sie können diese Option auf drei Arten verwenden:
|
checkout-only | Überschreibt die globale Option | Mit Hilfe dieser Option können Sie SVN-Module Stück für Stück herunterladen. Die Einstellung für diese Option sollte eine durch Komma getrennte Liste der herunterzuladenden Ordner sein. Wenn Sie den admin-Ordner nicht angeben, wird er automatisch heruntergeladen (falls nötig). Wenn Sie Stück für Stück herunterladen, wird der admin-Ordner aus kde-common eingefügt. Zwar überschreibt diese Option die globale Version, es ist jedoch dennoch nicht sinnvoll, die Option global einzustellen. |
configure-flags | Wird der globalen Option angefügt (ausgenommen für qt-copy) | Mit Hilfe dieser Option können Sie die Parameter festlegen, die dem Skript ./configure für das jeweilige Modul übergeben werden. Wenn Sie diese Option global einstellen, wird sie für alle Module angewandt. Für qt-copy wird ein völlig anderer Satz configure-Parameter benutzt als für KDE, daher überschreibt die Option die globale Einstellung, wenn sie für qt-copy eingestellt wird. |
colorful-output | Kann nicht überschrieben werden | Wenn Sie diese Option auf „false“ setzen, wird die farbige Ausgabe von kdesvn-build unterbunden. Die Voreinstellung ist „true“. Beachten Sie, dass kdesvn-build die Farbcodes nur auf ein Terminal ausgibt (wie beispielsweise xterm, Konsole oder die normale Linux-Konsole). |
cxxflags | Wird der globalen Option angefügt | Mit dieser Option können Sie die Parameter festlegen, die ./configure als CXXFLAGS übergeben werden sollen. Diese Option wird hier festgelegt und nicht einfach configure-flags mit angehängt, weil sie auch die Umgebungsvariable CXXFLAGS während dem Kompilieren setzt. |
dest-dir | Überschreibt die globale Option | Mit dieser Option können Sie den Modul-Namen für Ihre lokale Kopie auf der Festplatte festlegen. Das Modul extragear/network könnten Sie beispielsweise extragear-network nennen. |
disable-agent-check | Kann nicht überschrieben werden | Wenn Sie SSH zum Herunterladen der Quellen aus SVN verwenden, wird kdesvn-build versuchen sicherzustellen, dass Ihr SSH-Agent auch einige SSH-Identitäten verwaltet. Auf diese Weise soll verhindert werden, dass Sie andauern zur Passworteingabe aufgefordert werden. Sie können diese Prüfung unterbinden, indem Sie die Option auf „true“ stellen. |
do-not-compile | Überschreibt die globale Option | Mit dieser Option wird die Umgebungsvariable Beachten Sie, dass die Quellen zu den übersprungenen Programmen dennoch heruntergeladen werden. Um auch dies zu unterbinden, können Sie die Option checkout-only verwenden. Geben Sie mit dieser Option nur die Ordner an, die Sie herunterladen möchten. |
email-address | Kann nicht überschrieben werden |
Mit dieser Option können Sie die E-Mail-Adresse festlegen, die kdesvn-build; als Absender verwenden soll, falls das Senden einer E-Mail nötig sein sollte. Sie können diese Option vernachlässigen, wenn Sie keine Funktionen benutzen, die E-Mails senden. (Diese Funktionen sind in der Voreinstellung deaktiviert.) Derzeit benötigt nur email-on-compile-error diese Option. |
email-on-compile-error | Kann nicht überschrieben werden |
Mit dieser Option können Sie die E-Mail-Adresse festlegen, an die eine Nachricht gesendet werden soll, falls sich ein Modul nicht kompilieren lässt. kdesvn-build wartet ab, bis alle Module bearbeitet wurden und sendet dann einen Sammelbericht über die fehlgeschlagenen Module per E-Mail. Es wird nur eine E-Mail gesendet, falls ein Modul fehlschlägt. Bitte beachten Sie die Option email-address, mit der die Absenderadresse für diese Funktion eingestellt wird. Die Voreinstellung ist üblicherweise nicht zufriedenstellend. |
inst-apps | Überschreibt die globale Option | Dies ist das Gegenteil zu der Option do-not-compile. Mit dieser Option legen Sie fest, dass nur bestimmte Hauptordner kompiliert werden sollen. Mehrere Ordnerangaben müssen mit Leerzeichen getrennt werden. Änderungen an dieser Option werden erst angewendet, nachdem das nächste Mal make Beachten Sie, dass die Quellen zu den übersprungenen Programmen dennoch heruntergeladen werden. Um auch dies zu unterbinden, können Sie die Option checkout-only verwenden. Geben Sie mit dieser Option nur die Ordner an, die Sie herunterladen möchten. |
install-after-build | Überschreibt die globale Option | Diese Option legt fest, dass ein Paket nach erfolgreichem Kompilieren installiert werden soll. Dies ist in der Voreinstellung eingeschaltet. Wenn Sie dieses Verhalten nicht wünschen, stellen Sie die Option auf 0. Sie können analog auch den Befehlszeilen-Parameter --no-install verwenden. |
kdedir | Kann nicht überschrieben werden | Mit dieser Option wird der Zielordner festgelegt, in den KDE nach dem Kompilieren installiert wird. Die Voreinstellung ist ~/kde . Wenn Sie hier einen Ordner einstellen, für den Systemverwalter-Rechte benötigt werden, sollten Sie auch die Anmerkungen zur Option make-install-prefix lesen. |
libpath | Kann nicht überschrieben werden | Mit dieser Option wird die Umgebungsvariable LD_LIBRARY_PATH für den Kompiliervorgang gesetzt. Sie können die Option für jedes Modul separat einstellen. In der Voreinstellung ist sie nicht gesetzt, aber die Pfade $KDEDIR/lib und $QTDIR/lib werden automatisch hinzugefügt. Sie können für Pfadangaben auch die Tile (~) benutzen. |
log-dir | Überschreibt die globale Option | Diese Option wird zum Ändern des Ordners für Protokoll-Dateien des Skripts verwendet. Seit der Version 0.64 können Sie die Option auch pro Modul einstellen. |
make-install-prefix | Überschreibt die globale Option | Geben Sie für diese Variable eine Liste mit Befehlen ein. Mehrere Befehle werden durch Leerzeichen getrennt. Die hier eingegebenen Befehle werden vor jedem Aufruf von „make install“ ausgeführt. Dies ist hilfreich, wenn Sie für die Installation einiger Pakete Systemverwalter-Rechte benötigen und daher z. B. sudo aufrufen müssen. Bitte seien Sie umsichtig im Umgang mit Systemverwalter-Rechten! |
make-options | Überschreibt die globale Option | Mit Hilfe dieser Variable können Sie Befehlszeilen-Parameter an make übergeben. Dies kann beispielsweise zur Verwendung von distcc nützlich sein. Mit distcc ist es möglich, den Kompiliervorgang auf mehrere Rechner zu verteilen. Um es zu verwenden, müssen Sie die Option -j an make übergeben; mit dieser Einstellung ist das möglich. Wenn man nach der Dokumentation geht, entspricht die richtige Einstellung 2 * anzahl_netzwerk_prozessoren. Bei nur einer CPU ist -j2 die korrekte Einstellung. |
manual-build | Überschreibt die globale Option | Stellen Sie diese Option auf „true“, um zu verhindern, dass kdesvn-build dieses Modul kompiliert. Es wird dennoch weiterhin aktualisiert werden, wenn Quellen aus SVN heruntergeladen werden. Diese Option entspricht dem Befehlszeilen-Parameter --no-build . |
manual-update | Überschreibt die globale Option | Stellen Sie diese Option auf „true“, um zu verhindern, dass kdesvn-build dieses Modul aktualisiert (und auch nicht kompiliert und installiert). Wenn Sie diese Option so verwenden, entspricht das im Grunde dem Auskommentieren - es wird völlig übergangen. |
module-base-path | Überschreibt die globale Option | Mit dieser Option können Sie den in kdesvn-build voreingestellten Pfad zu einem Modul übergehen. Dies kann zum Beispiel verwendet werden, um für ein Modul eine besondere branch oder eine als tag vorhandene Version herunterzuladen. Bei der Suche nach dem richtigen Pfad kann Ihnen das KDE WebSVN behilflich sein. Beachten Sie: kdesvn-build setzt den Pfad nach dem folgenden Schema zusammen: Die Voreinstellung ist entweder „trunk“ oder „trunk/KDE“, je nach Modul-Name. |
niceness | Kann nicht überschrieben werden | Diese Option können Sie auf einen Wert zwischen 20 und 0 einstellen. Je höher die Zahl, desto niedriger ist die Laufzeit-Priorität für kdesvn-build. Die Voreinstellung ist 10. |
no-rebuild-on-fail | Überschreibt die globale Option | Stellen Sie diese Option auf „true“, wenn Sie verhindern möchten, dass kdesvn-build ein Modul erneut kompiliert, wenn inkrementelles Kompilieren fehlgeschlagen ist. Normalerweise versucht kdesvn-build, ein Modul erneut von vorne zu kompilieren, falls ein „SVN update“ den Kompiliervorgang durcheinander gebracht haben sollte. |
override-url | Überschreibt die globale Option | Wenn Sie diese Option einstellen, wird kdesvn-build den eingestellten Wert unverändert als Adresse an Subversion übergeben. Sie können diese Option grundsätzlich verwenden, um eine bestimmte Programmversion herunterzuladen. Dann kann kdesvn-build allerdings nichts mit der Option branch anfangen. |
qtdir | Kann nicht überschrieben werden | Diese Option setzt die Umgebungsvariable QTDIR für den Kompiliervorgang. Sie können die Einstellung nicht für einzelne Module überschreiben. Wenn Sie dies nicht setzen, lautet die Voreinstellung ; somit wird die mit KDE ausgelieferte Version von qt-copy verwendet. Sie können die Tilde (~) verwenden. |
remove-after-install | Überschreibt die globale Option | Wenn Sie wenig Festplattenspeicher zur Verfügung haben, können Sie mit Hilfe dieser Option alle Kompilier-Ordner (oder zusätzlich auch den Quell-Ordner) nach der erfolgreichen Installation löschen lassen. Die möglichen Einstellungen für diese Option sind:
Beachten Sie: Die Verwendung dieser Option kann eine negative Auswirkung auf Ihre Internet-Bandbreite und die Gesamtdauer einer KDE-Installation haben, weil kdesvn-build nicht mehr inkrementell kompilieren kann und die Pakete unter Umständen immer wieder neu herunterladen muss. Dies ist insbesondere der Fall, wenn Sie die Option auf „all“ einstellen. |
set-env | Überschreibt die globale Option | Diese Option erwartet eine Liste mit durch Leerzeichen getrennten Werten. Der erste Wert ist die zu setzende Umgebungsvariable, die restlichen Werte sind der Inhalt der Variable. Wenn Sie beispielsweise die Umgebungsvariable RONALD auf McDonald setzen möchten, würden Sie diese Einstellung verwenden: set-env Das besondere an dieser Option ist, dass Sie sie mehrfach wiederholen können, ohne das die jeweils vorige set-evn-Option im gleichen Abschnitt der Konfigurationsdatei überschrieben wird. Auf diese Weise können Sie pro Modul und auch global mehrere Umgebungsvariablen setzen. |
source-dir | Kann nicht überschrieben werden | Diese Option legt den Ordner auf Ihrer Festplatte fest, in dem die KDE SVN-Quellen gespeichert werden sollen. Wenn Sie die Option nicht setzen, lautet die Voreinstellung ~/kdesvn . Falls Sie die Option benutzen möchten, müssen Sie einen absoluten Pfad angeben. |
svn-server | Kann nicht überschrieben werden | Mit dieser Option können Sie den zu verwendenden SVN-Server festlegen. Die Voreinstellung ist der Server für anonymes SVN svn://anonsvn.kde.org/.der |
stop-on-failure | Überschreibt die globale Option | Setzen Sie diese Option auf „true“, wenn kdesvn-build beendet werden soll, falls beim Kompilieren oder Installieren ein Fehler auftritt. Diese Einstellung ist in der Voreinstellung ausgeschaltet. |
tag | Überschreibt die globale Option | Benutzen Sie diese Option, um eine bestimmte Version eines Moduls herunterzuladen. HINWEIS: Im Regelfall ist es sinnvoller, diese Option NICHT zu benutzen. Fertige KDE-Versionen können üblicherweise als Tar-Archiv von der KDE FTP-Seite oder einem der Softwarespiegel heruntergeladen werden. Falls Sie kdesvn-build benutzen, weil Sie Schwierigkeiten mit der Installation einer fertigen KDE-Version haben, sollten Sie lieber Konstruct verwenden, welches grundsätzlich mit den KDE Release-Archiven arbeitet. |
use-qt-builddir-hack | Überschreibt die globale Option | Zwar überschreibt diese Option die globale Option, jedoch ist sie nur sinnvoll für qt-copy einzusetzen. Wenn Sie die Option auf „true“ einstellen, wird der experimentelle Kompilier-Modus eingeschaltet, bei dem Kompilier- und Quell-Ordner von qt-copy unterschiedlich sind. Wenn dies aktiviert ist, wird kdesvn-build die qt-copy-Quellen in den Kompilier-Ordner kopieren und dort kompilieren. Das hat zur Folge, dass die Umgebungsvariable QTDIR auf $(qt-copy-build-dir)/qt-copy/lib eingestellt werden sollte. Außerdem sollten Sie die Option qtdir entsprechend anpassen. Auch in diesem Modus sollte noch inkrementelles Kompilieren möglich sein, weil die Zeitstempel auch noch nach der Kopie vorhanden sind. Wenn Sie apply-qt-patches verwenden, werden die Patches auf den Kompilier-Ordner angewandt, nicht auf den Quell-Ordner. Die Voreinstellung ist „true“. |
use-unsermake | Überschreibt die globale Option | Stellen Sie diese Option auf „true“, um das experimentelle Programm unsermake anstelle von automake zu verwenden. Dadurch kann die Kompilierzeit drastisch gesenkt werden, insbesondere wenn distcc eingesetzt wird. Diese Option ist voreingestellt auf „true“ (für die meisten Module). Wenn Sie diese Option verwenden, wird unsermake normalerweise automatisch auf dem aktuellen Stand gehalten. Dies könnte aber lästig werden, wenn Sie unsermake lieber selbst verwalten. In dem Fall können Sie die Option auf „self“ stellen. Dann wird unsermake verwendet, aber nicht automatisch durch kdesvn-build aktualisiert. |
Dieses Skript verwendet keine Umgebungsvariablen. Falls Sie welche für den Kompilier- oder Installationsvorgang benötigen, lesen Sie bitte die Hinweise für die Option set-env.
Das Skript kennt die folgenden Befehlszeilen-Parameter:
--help
Zeigt eine kurze Hilfe zur Verwendung an.
--version
Zeigt die Programmversion an.
--author
Zeigt Kontaktinformationen zum Autor des Skripts an.
--color
Aktiviert die farbige Darstellung der Ausgaben.
--no-color
Deaktiviert die farbige Darstellung der Ausgaben.
--pretend
(oder -p
)Ein Durchlauf wird simuliert, aber nichts wirklich ausgeführt.NICHTS aus
--quiet
(oder -q
)Reduziert die Ausgaben auf der Konsole auf ein Minimum.
--really-quiet
Nur Warnungen und Fehler ausgeben.
--verbose
Es werden ausführliche Ausgaben erzeugt, Sie können den genauen Ablauf verfolgen.
--svn-only
Führt nur das Aktualisieren der Quellen aus.
--build-only
Führt nur den Kompiliervorgang durch.
--ignore-modules
die folgenden auf der Befehlszeile angegebenen Module werden bei der Aktualisierung/Kompilierung ignoriert.
--no-svn
Keine Verbindung zum SVN-Server herstellen.Nimmt
--no-build
Den Kompiliervorgang überspringen.
--no-install
Keine Pakete automatisch installieren, nachdem sie kompiliert wurden.
--debug
Aktiviert den Modus zur Fehlersuche. Dies bedeutet, dass alle Ausgaben auf STDOUT ausgegeben und zusätzlich im Protokoll abgelegt werden. Des Weiteren sind die meisten Funktionen wesentlich "gesprächiger".
--no-rebuild-on-fail
Nicht versuchen, ein Modul nach einem Fehler erneut zu kompilieren. Es werden grundsätzlich keine Module neu kompiliert, bei denen es schon einen Versuch, erneut zu komplilieren, gegeben hat.
--refresh-build
Aktualisiert das Kompilier-System und beginnt den Kompiliervorgang von vorne.
--reconfigure
Führt das configure-Skript erneut aus, ohne den Kompilier-Ordner vorher zu bereinigen.
--recreate-configure
Führt make -f
Makefile.cvs erneut aus und erzeugt das configure-Skript neu. Der restliche Kompiliervorgang ist dann ganz normal. Diese Option schließt automatisch --reconfigure
ein.
--resume
Versucht, den Kompiliervorgang an der Stelle fortzusetzen, wo er zuletzt unterbrochen wurde. Diese Option schließt automatisch --no-svn
ein. Sie sollten keine weiteren Modul-Namen an der Kommandozeile übergeben.
--resume-from
Verhält sich wie --resume
, außer das Sie den Modul-Namen angeben können, bei dem fortgesetzt werden soll. Diese Option schließt automatisch --no-svn
ein. Sie sollten keine weiteren Modul-Namen auf der Kommandozeile übergeben.
--rc-file
Der darauf folgende Parameter ist die Konfigurationsdatei, aus der die Optionen eingelesen werden sollen. Die Voreinstellung für diesen Parameter ist ~/.kdesvn-buildrc.
--prefix=</pfad/zu/kde>
Ermöglicht Ihnen, den Ordner zu wechseln, in dem KDE installiert wird. Diese Option schließt automatisch --reconfigure
ein.
--build-system-only
Stoppt nach dem Ausführen von make -f
Makefile.cvs. Das configure-Skript muss dennoch ausgeführt werden; kdesvn-build wird dies automatisch für Sie erledigen. Auf diese Weise können Sie alle configure-Skript in einem Durchlauf erzeugen; auf diese Weise können Sie für jedes Modul die Ausgabe von ./configure --help
betrachten und entsprechende Optionen festlegen.
--install
Wenn dies der einzige Befehlszeilen-Parameter ist, wird versucht, alle Module zu installieren, die erfolgreich kompiliert wurden - mit Ausnahme von qt-copy, welches nicht installiert werden muss. Wenn Sie nach --install
weiter Parameter angeben, werden diese als zu installierende Module interpretiert.
--<option-name>=
Dies können Sie verwenden, um eine Option in Ihrer Konfigurationsdatei für jedes Modul zu überschreiben. Beispiel: --log-dir=/pfad/zu/ordner
würde die Option log-dir überschreiben.
--<modul-name>,<option-name>=
Dies können Sie verwenden, um eine Option in Ihrer Konfigurationsdatei für ein bestimmtes Modul zu überschreiben. Beispiel: Um die Option use-unsermake für kdemultimedia zu überschreiben, geben Sie --kdemultimedia,use-unsermake=false
ein.
Alle weiteren Parameter werden als Modul-Namen interpretiert, die aktualisiert oder kompiliert werden sollen. Verwechseln Sie Kompilieren nicht mit Installieren!
Diese Dokumentation ist unter den Bedingungen der GNU Free Documentation License veröffentlicht.
Would you like to make a comment or contribute an update to this page?
Send feedback to the KDE Docs Team