<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
  <!ENTITY kappname "kdesvn-build">
  <!ENTITY package "kdesdk">
  <!ENTITY % addindex "IGNORE">
  <!ENTITY % German "INCLUDE"
> <!-- Change language only here -->
  <!ENTITY svn "<application
>Subversion</application
>">
  <!ENTITY kdesvn-build "<application
>kdesvn-build</application
>">
]>

<book lang="&language;">

<bookinfo>
<title
>Handbuch zu &kdesvn-build;</title>

<authorgroup id="authors">
<author
><firstname
>Michael</firstname
><surname
>Pyne</surname
> <affiliation
><address
><email
>michael.pyne@kdemail.net</email
></address
></affiliation>
</author
> 
<author
><firstname
>Carlos</firstname
><surname
>Woelz</surname
> <affiliation
><address
><email
>carloswoelz@imap-mail.com</email
></address
></affiliation>
</author
> 


<othercredit role="translator"
><firstname
>Thomas</firstname
><surname
>Reitelbach</surname
><affiliation
><address
><email
>tr@erdfunkstelle.de</email
></address
></affiliation
><contrib
>Deutsche Übersetzung</contrib
></othercredit
> 

</authorgroup>

<copyright>
<year
>2005</year>
<holder
>Michael Pyne</holder>
</copyright>

<copyright>
<year
>2005</year>
<holder
>Carlos Woelz</holder>
</copyright>


<legalnotice
>&FDLNotice;</legalnotice>

<date
>2005-06-18</date>
<releaseinfo
>0.98</releaseinfo>

<abstract>
<para
>Das Skript &kdesvn-build; kompiliert und installiert &kde; direkt aus den Quelltexten des &kde;-SVN.</para>
</abstract>

<keywordset>
<keyword
>KDE</keyword>
<keyword
>kdesdk</keyword>
<keyword
>SVN</keyword>
<keyword
>Subversion</keyword>
<keyword
>KDE-Entwicklung</keyword>
</keywordset>

</bookinfo>


<chapter id="introduction">
<title
>Einführung</title>

<para
>Das Skript &kdesvn-build; hilft Benutzern bei der Installation von <ulink url="http://www.kde.org/"
>&kde;</ulink
> aus dem <ulink url="http://subversion.tigris.org/"
>SVN</ulink
>. Bite beachten Sie auch das Skript kde-build, welches im &kde;-Modul "kdesdk" enthalten ist. </para>

<para
>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. </para>

</chapter>

<chapter id="getting-started">
<title
>Erste Schritte</title>

<para
>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. </para>

<para
>Alle in diesem Kapitel angesprochene Punkte werden detaillierter in dem Dokument <ulink url="http://quality.kde.org/develop/cvsguide/buildstep.php"
>Building &kde; from Source Step by Step Guide</ulink
> auf der Webseite des <ulink url="http://quality.kde.org"
>&kde; Qualitäts-Sicherungsteam</ulink
> 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. </para>

<sect1 id="before-building">
<title
>Vorbereiten des Systems zum Kompilieren von &kde;</title>

<para
>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. </para>

<para
>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. </para>

<para
>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 <ulink url="http://www.kde.org/info/requirements/3.4.php"
>KDE Compilation Requirements</ulink
>. Üblicherweise werden die benötigen Hilfsprogramme und Bibliotheken mit Ihrer Distribution mitgeliefert und müssen evtl. nur nachinstalliert werden. </para>

<para
>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 <ulink url="http://quality.kde.org/develop/cvsguide/buildstep.php#step1"
>Building &kde; from Source Step by Step Guide</ulink
> finden Sie mehr Details über die einzelnen Hilfsprogramme und Techniken zur Installation der Abhängigkeiten. </para>

<para
>Wahrscheinlich haben Sie &kdesvn-build; bereits auf Ihrem System installiert. Nun müssen Sie die Konfigurationsdatei für &kdesvn-build; mit dem Namen <filename
>.kdesvn-buildrc</filename
> 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 <filename
>kdesvn-buildrc-sample</filename
>. Weitere Informationen zur Syntax der Konfigurationsdatei können Sie in <xref linkend="configure-data"/> und <xref linkend="kdesvn-buildrc"/> nachlesen. </para>

<para
>Es ist nicht schwer, die neueste Version von &kdesvn-build; zu erhalten. Öffnen Sie die Seite kdesdk/scripts unter <ulink url="http://websvn.kde.org/trunk/KDE"
>websvn.kde.org</ulink
>. 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 <filename
>kdesvn-buildrc-sample</filename
> auf Ihren Rechner. Machen Sie das Skript ausführbar und sorgen Sie dafür, dass es über die Umgebungsvariable PATH gefunden werden kann. </para>

</sect1>

<sect1 id="configure-data">
<title
>Festlegen der Einstellungen</title>

<para
>Damit das Skript funktioniert, müssen Sie die Datei <filename
>.kdesvn-buildrc</filename
> in Ihrem persönlichen Ordner haben, in der die allgemeinen Einstellungen festgelegt sind. </para>

<para
>Benutzen Sie die Datei <filename
>kdesvn-buildrc-sample</filename
> als Vorlage und stellen Sie die allgemeinen Optionen und die Module ein, die Sie installieren möchten. </para>

<para
>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: <emphasis
>svn://anonsvn.kde.org</emphasis
>, aber Sie können dies ändern, wenn Sie einen <ulink url="http://developer.kde.org/documentation/misc/firststepsaccount"
>&kde; SVN-Zugang</ulink
> haben oder es einen <ulink url="http://developer.kde.org/source/anonsvn.html"
>Spiegel in Ihrer Nähe</ulink
> gibt. </para>

<para
>Geben Sie besonders acht auf die globalen Variablen kdedir und qtdir. kdedir legt den Zielordner fest, in dem &kde; installiert wird (voreingestellt ist <filename
>~/kde</filename
>) und qtdir legt fest, wo Qt installiert ist bzw. ob es dort kompiliert und installiert werden soll (voreingestellt ist <filename
>~/kdesvn/build/qt-copy</filename
>). 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 <filename
>kdesvn-buildrc-sample</filename
> erhalten Sie eine weitgehend vollständige &kde;-Installation. Speichern Sie Ihre Einstellungen in die Datei <filename
>.kdesvn-buildrc</filename
> in Ihrem persönlichen Ordner. </para>

<para
>Wenn Sie Feineinstellungen an <filename
>.kdesvn-buildrc</filename
> vornehmen möchten, lesen Sie bitte in <xref linkend="kdesvn-buildrc"/> die detaillierten Informationen über alle Konfigurations-Optionen nach. </para>

</sect1>

<sect1 id="building-and-troubleshooting">
<title
>Verwenden von &kdesvn-build;</title>

<para
>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: <screen
><prompt
>&percnt;</prompt
><command
>su</command
> <option
>-</option
> <replaceable
>Benutzername</replaceable>
<prompt
>&percnt;</prompt
><command
>kdesvn-build</command
>
</screen>
</para>

<para
>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 <ulink url="http://quality.kde.org/develop/cvsguide/buildstep.php#step1"
>Building &kde; from Source Step by Step Guide</ulink
>. </para>

</sect1>

<sect1 id="environment">
<title
>Einrichten der neuen &kde;-Umgebung</title>

<para
>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. </para>

<para
>Öffnen Sie die Datei <filename
>.bash_profile</filename
> in Ihrem persönlichen Ordner oder erzeugen Sie eine neue, falls sie noch nicht existiert. Am Ende der Datei fügen Sie folgendes ein: <programlisting>
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_PATH
</programlisting
> Wenn Sie das Modul qt-copy installiert haben, fügen Sie dies stattdessen ein: <programlisting
>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
</programlisting>
</para>

<para
>Wenn Sie keinen separaten Benutzer verwenden, ändern Sie die Umgebungsvariable <envar
>$KDEHOME</envar
> in <filename
>.bash_profile</filename
> für die neue Umgebung. <programlisting
>export KDEHOME="${HOME}/.kde-svn"

# Create it if needed
[ ! -e ~/.kde-svn ] &amp;&amp; mkdir ~/.kde-svn
</programlisting>
</para>

<note>
<para
>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 <filename
>.bash_profile</filename
> anpassen: <programlisting
>XDG_CONFIG_DIRS="/etc/xdg"
XDG_DATA_DIRS="${KDEDIR}/share:/usr/share"
export XDG_CONFIG_DIRS XDG_DATA_DIRS
</programlisting>

</para>
</note>

<para
>Nun sollte die Umgebungsvariablen korrekt eingestellt sein. Stellen Sie nun sicher, dass die richtige Version des Start-Skripts <application
>startkde</application
> verwendet wird: </para>

<para
>Öffnen Sie die Datei <filename
>.xinitrc</filename
> (oder <filename
>.xsession</filename
>, abhängig von Ihrer Distribution) in Ihrem persönlichen Ordner. Erzeugen Sie sie, falls nötig. Fügen Sie die folgende Zeile hinzu: <programlisting
>exec ${KDEDIR}/bin/startkde
</programlisting>
</para>

<para
>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. </para>

<para
>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: </para>

<screen
>startx&nbsp;--&nbsp;:1
</screen>

<tip>
<para
>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. </para>
</tip>


</sect1>

</chapter>

<chapter id="features">
<title
>Besondere Funktionen des Skripts</title>

<para
>&kdesvn-build; beinhaltet die folgenden Funktionen und Besonderheiten: </para>


<itemizedlist>

<listitem
><para
>Automatisches Herunterladen und Aktualisieren der nötigen Module aus dem SVN-Archiv. </para
></listitem>

<listitem
><para
>Zeitmessung für den Kompiliervorgang der Module. </para
></listitem>

<listitem
><para
>Automatisches Neu-Kompilieren von Modulen, die inkrementelles make verwenden (welches nach verschiedenen Arten von commits fehleranfällig ist). </para
></listitem>

<listitem
><para
>Fortsetzen eines vorherigen Skript-Durchlaufs und Starten des Kompiliervorgangs mit einem bestimmten Modul. </para
></listitem>

<listitem
><para
>Die voreingestellten Optionen sind gut geeignet für die Installation von &kde; aus dem SVN für einen einzelnen Benutzer. </para
></listitem>

<listitem
><para
>Direkte Unterstützung für <ulink url="http://www.kde.me.uk/index.php?page=unsermake"
>Unsermake</ulink
>. </para
></listitem>

<listitem
><para
>Benutzung der Tilde als Platzhalter in den Optionen. Beispielsweise ist Folgendes ist möglich: <programlisting
>qtdir ~/kdesvn/build/qt-copy</programlisting>
</para
></listitem>

<listitem
><para
>Kompilier-, Quell- und Protokoll-Ordner sind frei einstellbar. </para
></listitem>

<listitem
><para
>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 <application
>qt-copy</application
>, welches nicht für diese Art des Kompilierens vorgesehen ist (es sei denn Sie möchten den Hack <link linkend="conf-use-qt-builddir-hack"
><quote
>qt with a separate build directory hack</quote
></link
> ausprobieren). </para
></listitem>

<listitem
><para
>Es können sowohl globale Einstellungen für alle Module als auch spezifische Einstellungen für bestimmte Module vorgenommen werden. </para
></listitem>

<listitem
><para
>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 <option
>--refresh-build</option
> aufrufen. </para
></listitem>

<listitem
><para
>Es können verschiedene Umgebungsvariablen benutzt werden, die den Kompiliervorgang beeinflussen. Dazu gehören unter anderem <envar
>KDEDIR</envar
>, <envar
>QTDIR</envar
>, <envar
>DO_NOT_COMPILE</envar
> und <envar
>CXXFLAGS</envar
>. </para
></listitem>

<listitem
><para
>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. </para
></listitem>

<listitem
><para
>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 <function
>system()</function
>; Sie sollten das Skript lieber nicht als Systemverwalter ausführen. </para
></listitem>

<listitem
><para
>Sie können <link linkend="conf-make-install-prefix"
>make-install-prefix</link
> verwenden, um dem Kommando make install einen Befehl voranzustellen. Dies ist z.&nbsp;B. für die Verwendung von sudo nützlich. </para
></listitem>

<listitem
><para
>Mit Hilfe der Option <link linkend="conf-apidox"
>apidox</link
> können Sie veranlassen, dass die API-Dokumentation für einige Module erzeugt und installiert wird. </para
></listitem>

<listitem
><para
>Sie können auch nur einzelne Teile von &kde; aus einem SVN-Modul herunterladen lassen. Beispielsweise könnten Sie nur <application
>taglib</application
> aus <application
>kdesupport</application
> herunterladen, oder nur <application
>K3b</application
> aus <application
>extragear/multimedia</application
>. Das Skript wird automatisch <application
>kde-common</application
> mit einbeziehen, falls dies zum Kompilieren nötig ist. </para
></listitem>

<listitem
><para
>Sie können alle Vorgänge <quote
>vorgaukeln</quote
> anstatt sie wirklich ausführen zu lassen. Benutzen Sie dazu die Option <option
>--pretend</option
> oder <option
>-p</option
> und das Skript wird eine detaillierte Beschreibung alle Befehle ausgeben, die es ausführen würde, ohne tatsächlich etwas zu unternehmen. </para
></listitem>

<listitem
><para
>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 <link linkend="conf-module-base-path"
>module-base-path</link
> festlegen. </para
></listitem>

</itemizedlist>

<para
>Dinge, die &kdesvn-build; NICHT macht: </para>

<itemizedlist>

<listitem
><para
>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. </para
></listitem>

<listitem
><para
>Ihre Zähne putzen, das müssen Sie schon selbst erledigen ;-) </para
></listitem>

<listitem
><para
>Das Skript ist sicherlich nicht fehlerfrei - dafür schonmal vorab entschuldigung. </para
></listitem>

</itemizedlist>

</chapter>

<chapter id="kdesvn-buildrc">
<title
>Das Format der Datei .kdesvn-buildrc</title>

<para
>Für die korrekte Funktion benötigt das Skript eine Datei namens <filename
>.kdesvn-buildrc</filename
> in Ihrem persönlichen Ordner. Diese beschreibt unter anderem die KDE-Module, die Sie herunterladen und installieren möchten. </para>



<para
>Zuerst werden die globalen Einstellungen wie folgt festgelegt: </para>

<programlisting
>global
<replaceable
>option-name option-wert</replaceable>
<replaceable
>[...]</replaceable>
end global
</programlisting>

<para
>Danach folgen eine oder mehrere Modul-Abschnitte, die wie folgt aussehen: </para>

<programlisting
>module <replaceable
>modul-name</replaceable>
<replaceable
>option-name option-wert</replaceable>
<replaceable
>[...]</replaceable>
end module
</programlisting>

<para
><replaceable
>modul-name</replaceable
> muss ein Modulname aus dem &kde; SVN-Archiv sein (z.&nbsp;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. </para>

<para
>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 <link linkend="authors"
>hier</link
>. </para>

<itemizedlist>
<listitem
><para
><link linkend="conf-apidox"
>apidox</link
>: Erstellen der API-Dokumentation</para
></listitem>
<listitem
><para
><link linkend="conf-apply-qt-patches"
>apply-qt-patches</link
>: Verbessern von Qt-copy mit einigen Patches</para
></listitem>
<listitem
><para
><link linkend="conf-binpath"
>binpath</link
>: Zum Festlegen der Umgebungsvariable <envar
>PATH</envar
></para
></listitem>
<listitem
><para
><link linkend="conf-branch"
>branch</link
>: Zum Herunterladen aus einer bestimmten branch anstelle von /trunk</para
></listitem>
<listitem
><para
><link linkend="conf-build-dir"
>build-dir</link
>: Legt den Kompilier-Ordner festO</para
></listitem>
<listitem
><para
><link linkend="conf-checkout-only"
>checkout-only</link
>: Nur bestimmte Teile eines Moduls herunterladen</para
></listitem>
<listitem
><para
><link linkend="conf-colorful-output"
>colorful-output</link
>: Farbige Darstellung der Skript-Ausgaben</para
></listitem>
<listitem
><para
><link linkend="conf-configure-flags"
>configure-flags</link
>: Legt fest, welche Parameter an configure eines bestimmten Moduls übergeben werden sollen.</para
></listitem>
<listitem
><para
><link linkend="conf-cxxflags"
>cxxflags</link
>: Legt den Inhalt der Umgebungsvariable <envar
>CXXFLAGS</envar
> fest</para
></listitem>
<listitem
><para
><link linkend="conf-dest-dir"
>dest-dir</link
>: Zum Ändern des Ordner-Namens für ein Modul</para
></listitem>
<listitem
><para
><link linkend="conf-disable-agent-check"
>disable-agent-check</link
>: Verhindert die Prüfung des Status für den SSH-Agenten</para
></listitem>
<listitem
><para
><link linkend="conf-do-not-compile"
>do-not-compile</link
>: Schließt bestimmte Ordner vom Kompiliervorgang aus</para
></listitem>
<listitem
><para
><link linkend="conf-inst-apps"
>inst-apps</link
>: Hiermit werden nur bestimmte Ordner kompiliert und installiert</para
></listitem>
<listitem
><para
><link linkend="conf-install-after-build"
>install-after-build</link
>: Hierdurch kann die Installation nach dem Kompilieren verhindert werden</para
></listitem>
<listitem
><para
><link linkend="conf-kdedir"
>kdedir</link
>: Legt den Zielordner für die KDE-Installation fest</para
></listitem>
<listitem
><para
><link linkend="conf-libpath"
>libpath</link
>: Legt den Inhalt der Umgebungsvariable <envar
>LD_LIBRARY_PATH</envar
> fest</para
></listitem>
<listitem
><para
><link linkend="conf-make-install-prefix"
>make-install-prefix</link
>: Zum Ausführen eines Hilfsprogrammes vor make install (z.&nbsp;B. sudo)</para
></listitem>
<listitem
><para
><link linkend="conf-make-options"
>make-options</link
>: Übergibt bestimmte Optionen an das Programm make</para
></listitem>
<listitem
><para
><link linkend="conf-manual-build"
>manual-build</link
>: Verhindert das automatische Kompilieren eines Moduls</para
></listitem>
<listitem
><para
><link linkend="conf-manual-update"
>manual-update</link
>: Verhindert das automatische Aktualisieren eines Moduls</para
></listitem>
<listitem
><para
><link linkend="conf-module-base-path"
>module-base-path</link
>: Ändert den Pfad, aus dem ein Modul heruntergeladen werden soll (nützlich für SVN-Verzweigungen und -Tags)</para
></listitem>
<listitem
><para
><link linkend="conf-niceness"
>niceness</link
>: Ändert die Laufzeit-Priorität des Skripts</para
></listitem>
<listitem
><para
><link linkend="conf-no-rebuild-on-fail"
>no-rebuild-on-fail</link
>: Verhindert den erneuten Durchlauf von make nach einem Fehler</para
></listitem>
<listitem
><para
><link linkend="conf-qtdir"
>qtdir</link
>: Legt den Pfad zu Qt fest</para
></listitem>
<listitem
><para
><link linkend="conf-set-env"
>set-env</link
>: Zum Einstellen einer UmgebungsvariableFestlegen </para
></listitem>
<listitem
><para
><link linkend="conf-source-dir"
>source-dir</link
>: Ändert den Pfad für heruntergeladene Quellen</para
></listitem>
<listitem
><para
><link linkend="conf-stop-on-failure"
>stop-on-failure</link
>: Beendet kdesvn-build sobald ein Fehler auftritt</para
></listitem>
<listitem
><para
><link linkend="conf-svn-server"
>svn-server</link
>: Ändert den Server, von dem die Quellen heruntergeladen werden</para
></listitem>
<listitem
><para
><link linkend="conf-use-qt-builddir-hack"
>use-qt-builddir-hack</link
>: Legt fest, dass für Qt separate Quell- und Kompilier-Ordner verwendet werden sollen (so wie bei KDE auch)</para
></listitem>
<listitem
><para
><link linkend="conf-use-unsermake"
>use-unsermake</link
>: Verwendung des erweiterten Kompilier-Systems unsermake</para
></listitem>
</itemizedlist>


<para
>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. </para>

<table id="option-table">
<title
>Tabelle der Optionen</title>
<tgroup cols="3">

<thead>
<row>
<entry
>Name der Option</entry>
<entry
>Modul -&gt; Globales Verhalten</entry>
<entry
>Anmerkungen</entry>
</row>
</thead>

<tbody>

<row id="conf-apidox">
<entry
>apidox</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>Stellen Sie die Option auf <quote
>true</quote
>, so wird &kdesvn-build; die API-Dokumentation für das Modul erzeugen und installieren. Dies funktioniert nur mit Modulen, die den Befehl <command
>make apidox</command
> unterstützen (inklusive kdelibs, kdebase, koffice und weiteren). </entry>
</row>

<row id="conf-apply-qt-patches">
<entry
>apply-qt-patches</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>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.</entry>
</row>

<row id="conf-binpath">
<entry
>binpath</entry>
<entry
>Kann nicht überschrieben werden</entry>
<entry
><para
>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 <filename class="directory"
>/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin</filename
>. Diese Umgebungsvariable sollte die Pfade zu den notwendigen Entwicklungs-Werkzeugen beinhalten. Die Pfade <filename class="directory"
>$KDEDIR/bin</filename
> und <filename class="directory"
>$QTDIR/bin</filename
> werden automatisch hinzugefügt. Sie können auch die Tilde (~) für Pfadangaben verwenden.</para>
</entry>
</row>

<row id="conf-branch">
<entry
>branch</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
><para
>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.</para>
<para
>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.</para>
<para
>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 <link linkend="conf-override-url"
>override-url</link
>.</para>
</entry>
</row>

<row id="conf-build-dir">
<entry
>build-dir</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>Verwenden Sie diese Option zum Ändern des Ordners, in dem die Quellen kompiliert werden sollen. Sie können diese Option auf drei Arten verwenden: <itemizedlist
> <listitem
><para
>Relativ zum &kde; SVN Quellordner (siehe die Option <link linkend="conf-source-dir"
>source-dir</link
>). Dies ist die Voreinstellung und außerdem die Art und Weise, wie es bis zur Skript-Version 0.61 funktioniert hat. Dieser Modus wird automatisch verwendet, wenn Sie einen Ordner-Namen eingeben, der nicht mit einer Tilde (~) oder einem Schrägstrich (/) beginnt.</para
> <para
>Die Voreinstellung ist <filename class="directory"
>build</filename
>.</para
></listitem
> <listitem
><para
>Absoluter Pfad. Wenn Sie einen Pfad eingeben, der mit einem Schrägstrich (/) beginnt, so wird dieser Pfad wie eingegeben verwendet. Beispiel: <filename class="directory"
>/tmp/kde-obj-dir/</filename
>.</para
></listitem
> <listitem
><para
>Relativ zum persönlichen Ordner. Wenn Sie einen Pfad angeben, der mit einer Tile (~) beginnt, so wird der Pfad als relativ zu Ihrem persönlichen Ordner angesehen. Dies funktioniert analog zu der Art und Weise, wie die Shell eine Tilde interpretiert. Beispiel: <filename class="directory"
>~/builddir</filename
> würde den Kompilier-Ordner auf <filename class="directory"
>/home/benutzer/builddir</filename
> einstellen.</para
></listitem
></itemizedlist
> Diese Option kann pro Modul separat eingestellt werden. </entry>
</row>

<row id="conf-checkout-only">
<entry
>checkout-only</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>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. </entry>
</row>

<row id="conf-configure-flags">
<entry
>configure-flags</entry>
<entry
>Wird der globalen Option angefügt (ausgenommen für qt-copy)</entry>
<entry
>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 <emphasis
>überschreibt</emphasis
> die Option die globale Einstellung, wenn sie für qt-copy eingestellt wird.</entry>
</row>

<row id="conf-colorful-output">
<entry
>colorful-output</entry>
<entry
>Kann nicht überschrieben werden</entry>
<entry
>Wenn Sie diese Option auf <quote
>false</quote
> setzen, wird die farbige Ausgabe von &kdesvn-build; unterbunden. Die Voreinstellung ist <quote
>true</quote
>. Beachten Sie, dass &kdesvn-build; die Farbcodes nur auf ein Terminal ausgibt (wie beispielsweise xterm, &konsole; oder die normale Linux-Konsole). </entry>
</row>

<row id="conf-cxxflags">
<entry
>cxxflags</entry>
<entry
>Wird der globalen Option angefügt</entry>
<entry
>Mit dieser Option können Sie die Parameter festlegen, die <command
>./configure</command
> als <envar
>CXXFLAGS</envar
> übergeben werden sollen. Diese Option wird hier festgelegt und nicht einfach <command
>configure-flags</command
> mit angehängt, weil sie auch die Umgebungsvariable <envar
>CXXFLAGS</envar
> während dem Kompilieren setzt. </entry>
</row>

<row id="conf-dest-dir">
<entry
>dest-dir</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>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. </entry>
</row>

<row id="conf-disable-agent-check">
<entry
>disable-agent-check</entry>
<entry
>Kann nicht überschrieben werden</entry>
<entry
>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 <quote
>true</quote
> stellen. </entry>
</row>

<row id="conf-do-not-compile">
<entry
>do-not-compile</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
><para
>Mit dieser Option wird die Umgebungsvariable <envar
>DO_NOT_COMPILE</envar
> gesetzt, bevor das configure-Skript ausgeführt wird. Laut der <ulink url="http://developer.kde.org/documentation/other/developer-faq.html"
>&kde; Entickler-FAQ</ulink
> sollten auf diese Weise alle Haupt-Ordner beim Kompilieren übersprungen werden, die mit dieser Variable übergeben werden. Trennen Sie mehrere Ordnerangaben durch Leerzeichen.</para>

<para
>Beachten Sie, dass die Quellen zu den übersprungenen Programmen dennoch heruntergeladen werden. Um auch dies zu unterbinden, können Sie die Option <link linkend="conf-checkout-only"
>checkout-only</link
> verwenden. Geben Sie mit dieser Option nur die Ordner an, die Sie herunterladen möchten.</para>
</entry>
</row>

<row id="conf-email-address">
<entry
>email-address</entry>
<entry
>Kann nicht überschrieben werden</entry>
<entry>
<para
>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.) </para>

<para
>Derzeit benötigt nur <link linkend="conf-email-on-compile-error"
>email-on-compile-error</link
> diese Option. </para>
</entry>
</row>

<row id="conf-email-on-compile-error">
<entry
>email-on-compile-error</entry>
<entry
>Kann nicht überschrieben werden</entry>
<entry>
<para
>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. </para>

<para
>Bitte beachten Sie die Option <link linkend="conf-email-address"
>email-address</link
>, mit der die Absenderadresse für diese Funktion eingestellt wird. Die Voreinstellung ist üblicherweise nicht zufriedenstellend. </para>
</entry>
</row>

<row id="conf-inst-apps">
<entry
>inst-apps</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
><para
>Dies ist das Gegenteil zu der Option <link linkend="conf-do-not-compile"
>do-not-compile</link
>. Mit dieser Option legen Sie fest, dass nur bestimmte Hauptordner kompiliert werden sollen. Mehrere Ordnerangaben müssen mit Leerzeichen getrennt werden.</para>

<para
>Änderungen an dieser Option werden erst angewendet, nachdem das nächste Mal <command
>make <option
>-f</option
> Makefile.cvs</command
> aufgerufen wurde; entweder automatisch, durch das Skript oder manuell durch die Option <link linkend="cmdline-refresh-build"
><option
>--refresh-build</option
></link
> oder <link linkend="cmdline-recreate-configure"
><option
>--recreate-configure</option
></link
>. </para>

<para
>Beachten Sie, dass die Quellen zu den übersprungenen Programmen dennoch heruntergeladen werden. Um auch dies zu unterbinden, können Sie die Option <link linkend="conf-checkout-only"
>checkout-only</link
> verwenden. Geben Sie mit dieser Option nur die Ordner an, die Sie herunterladen möchten.</para>
</entry>
</row>

<row id="conf-install-after-build">
<entry
>install-after-build</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>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 <link linkend="cmdline-no-install"
><option
>--no-install</option
></link
> verwenden. </entry>
</row>

<row id="conf-kdedir">
<entry
>kdedir</entry>
<entry
>Kann nicht überschrieben werden</entry>
<entry
>Mit dieser Option wird der Zielordner festgelegt, in den &kde; nach dem Kompilieren installiert wird. Die Voreinstellung ist <filename class="directory"
>~/kde</filename
>. Wenn Sie hier einen Ordner einstellen, für den Systemverwalter-Rechte benötigt werden, sollten Sie auch die Anmerkungen zur Option <link linkend="conf-make-install-prefix"
>make-install-prefix</link
> lesen.</entry>
</row>

<row id="conf-libpath">
<entry
>libpath</entry>
<entry
>Kann nicht überschrieben werden</entry>
<entry
>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 <filename class="directory"
>$KDEDIR/lib</filename
> und <filename class="directory"
>$QTDIR/lib</filename
> werden automatisch hinzugefügt. Sie können für Pfadangaben auch die Tile (~) benutzen. </entry>
</row>

<row id="conf-log-dir">
<entry
>log-dir</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>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. </entry>
</row>

<row id="conf-make-install-prefix">
<entry
>make-install-prefix</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>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 <quote
>make install</quote
> ausgeführt. Dies ist hilfreich, wenn Sie für die Installation einiger Pakete Systemverwalter-Rechte benötigen und daher z.&nbsp;B. sudo aufrufen müssen. Bitte seien Sie umsichtig im Umgang mit Systemverwalter-Rechten!</entry>
</row>

<row id="conf-make-options">
<entry
>make-options</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>Mit Hilfe dieser Variable können Sie Befehlszeilen-Parameter an make übergeben. Dies kann beispielsweise zur Verwendung von <ulink url="http://distcc.samba.org/"
><application
>distcc</application
></ulink
> nützlich sein. Mit <application
>distcc</application
> ist es möglich, den Kompiliervorgang auf mehrere Rechner zu verteilen. Um es zu verwenden, müssen Sie die Option <option
>-j</option
> 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 <option
>-j2</option
> die korrekte Einstellung.</entry>
</row>

<row id="conf-manual-build">
<entry
>manual-build</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>Stellen Sie diese Option auf <quote
>true</quote
>, 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 <link linkend="cmdline-no-build"
><option
>--no-build</option
></link
>. </entry>
</row>

<row id="conf-manual-update">
<entry
>manual-update</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>Stellen Sie diese Option auf <quote
>true</quote
>, 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. </entry>
</row>

<row id="conf-module-base-path">
<entry
>module-base-path</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
><para
>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 <ulink url="http://websvn.kde.org/"
>&kde; WebSVN</ulink
> behilflich sein.</para>
<para
>Beachten Sie: &kdesvn-build; setzt den Pfad nach dem folgenden Schema zusammen: <varname
>$svn-server</varname
>/home/kde/<varname
>$module-base-path</varname
><varname
>$modul-name</varname
>. </para>
<para
>Die Voreinstellung ist entweder <quote
>trunk</quote
> oder <quote
>trunk/KDE</quote
>, je nach Modul-Name.</para>
</entry>
</row>

<row id="conf-niceness">
<entry
>niceness</entry>
<entry
>Kann nicht überschrieben werden</entry>
<entry
>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. </entry>
</row>

<row id="conf-no-rebuild-on-fail">
<entry
>no-rebuild-on-fail</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>Stellen Sie diese Option auf <quote
>true</quote
>, 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 <quote
>SVN update</quote
> den Kompiliervorgang durcheinander gebracht haben sollte.</entry>
</row>

<row id="conf-override-url">
<entry
>override-url</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>Wenn Sie diese Option einstellen, wird kdesvn-build den eingestellten Wert <emphasis
>unverändert</emphasis
> 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 <link linkend="conf-branch"
>branch</link
> anfangen. </entry>
</row>

<row id="conf-qtdir">
<entry
>qtdir</entry>
<entry
>Kann nicht überschrieben werden</entry>
<entry
>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 <filename class="directory"
><varname
>$(source-dir)</varname
>/build/qt-copy</filename
>; somit wird die mit &kde; ausgelieferte Version von qt-copy verwendet. Sie können die Tilde (~) verwenden. </entry>
</row>

<row id="conf-remove-after-install">
<entry
>remove-after-install</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
><para
>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. </para>
<para
>Die möglichen Einstellungen für diese Option sind: <itemizedlist>
<listitem
><para
>none - Nichts wird gelöscht (dies ist die Voreinstellung).</para
></listitem>
<listitem
><para
>builddir - Kompilier-Ordner werden gelöscht, aber keine Quell-Ordner.</para
></listitem>
<listitem
><para
>all - Sowohl Kompilier- als auch Quell-Ordner weren gelöscht.</para
></listitem>
</itemizedlist>
</para>

<para
>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 <quote
>all</quote
> einstellen.</para>
</entry>
</row>

<row id="conf-set-env">
<entry
>set-env</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
><para
>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:</para>
<screen
><command
>set-env</command
> <envar
>RONALD</envar
> <userinput
>McDonald</userinput
></screen>
<para
>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.</para>
</entry>
</row>

<row id="conf-source-dir">
<entry
>source-dir</entry>
<entry
>Kann nicht überschrieben werden</entry>
<entry
>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 <filename class="directory"
>~/kdesvn</filename
>. Falls Sie die Option benutzen möchten, müssen Sie einen absoluten Pfad angeben. </entry>
</row>

<row id="conf-svn-server">
<entry
>svn-server</entry>
<entry
>Kann nicht überschrieben werden</entry>
<entry
>Mit dieser Option können Sie den zu verwendenden SVN-Server festlegen. Die Voreinstellung ist der Server für anonymes SVN <emphasis
>svn://anonsvn.kde.org/</emphasis
>.der </entry>
</row>

<row id="conf-stop-on-failure">
<entry
>stop-on-failure</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>Setzen Sie diese Option auf <quote
>true</quote
>, wenn kdesvn-build beendet werden soll, falls beim Kompilieren oder Installieren ein Fehler auftritt. Diese Einstellung ist in der Voreinstellung ausgeschaltet. </entry>
</row>

<row id="conf-tag">
<entry
>tag</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
><para
>Benutzen Sie diese Option, um eine bestimmte Version eines Moduls herunterzuladen.</para>
<para
><emphasis
>HINWEIS:</emphasis
> Im Regelfall ist es sinnvoller, diese Option NICHT zu benutzen. Fertige KDE-Versionen können üblicherweise als Tar-Archiv von der <ulink url="ftp://ftp.kde.org/"
>KDE FTP-Seite</ulink
> oder <ulink url="http://download.kde.org/download.php"
>einem der Softwarespiegel</ulink
> heruntergeladen werden.</para>
<para
>Falls Sie kdesvn-build benutzen, weil Sie Schwierigkeiten mit der Installation einer fertigen KDE-Version haben, sollten Sie lieber <ulink url="http://developer.kde.org/build/konstruct/"
>Konstruct</ulink
> verwenden, welches grundsätzlich mit den KDE Release-Archiven arbeitet.</para>
</entry>
</row>

<row id="conf-use-qt-builddir-hack">
<entry
>use-qt-builddir-hack</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
>Zwar überschreibt diese Option die globale Option, jedoch ist sie nur sinnvoll für qt-copy einzusetzen. Wenn Sie die Option auf <quote
>true</quote
> einstellen, wird der <emphasis
>experimentelle</emphasis
> 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 <filename class="directory"
>$(qt-copy-build-dir)/qt-copy/lib</filename
> eingestellt werden sollte. Außerdem sollten Sie die Option <link linkend="conf-qtdir"
>qtdir</link
> 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 <link linkend="conf-apply-qt-patches"
>apply-qt-patches</link
> verwenden, werden die Patches auf den Kompilier-Ordner angewandt, nicht auf den Quell-Ordner. Die Voreinstellung ist <quote
>true</quote
>. </entry>
</row>

<row id="conf-use-unsermake">
<entry
>use-unsermake</entry>
<entry
>Überschreibt die globale Option</entry>
<entry
><para
>Stellen Sie diese Option auf <quote
>true</quote
>, um das experimentelle Programm unsermake anstelle von automake zu verwenden. Dadurch kann die Kompilierzeit drastisch gesenkt werden, insbesondere wenn <ulink url="http://www.csh.rit.edu/slashdot/distcc.html"
>distcc</ulink
> eingesetzt wird. Diese Option ist voreingestellt auf <quote
>true</quote
> (für die meisten Module). </para>

<para
>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 <quote
>self</quote
> stellen. Dann wird unsermake verwendet, aber nicht automatisch durch kdesvn-build aktualisiert. </para>
</entry>
</row>

</tbody>

</tgroup>
</table>

</chapter>

<chapter id="cmdline">
<title
>Befehlszeilen-Parameter und Umgebungsvariablen</title>

<para
>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 <link linkend="conf-set-env"
>set-env</link
>. </para>

<para
>Das Skript kennt die folgenden Befehlszeilen-Parameter: </para>

<variablelist>

<varlistentry id="cmdline-help">
<term
><option
>--help</option
></term>
<listitem
><para
>Zeigt eine kurze Hilfe zur Verwendung an. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-version">
<term
><option
>--version</option
></term>
<listitem
><para
>Zeigt die Programmversion an. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-author">
<term
><option
>--author</option
></term>
<listitem
><para
>Zeigt Kontaktinformationen zum Autor des Skripts an. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-color">
<term
><option
>--color</option
></term>
<listitem
><para
>Aktiviert die farbige Darstellung der Ausgaben. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-no-color">
<term
><option
>--no-color</option
></term>
<listitem
><para
>Deaktiviert die farbige Darstellung der Ausgaben. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-pretend">
<term
><option
>--pretend</option
> (oder <option
>-p</option
>)</term>
<listitem
><para
>Ein Durchlauf wird simuliert, aber nichts wirklich ausgeführt.NICHTS aus </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-quiet">
<term
><option
>--quiet</option
> (oder <option
>-q</option
>)</term>
<listitem
><para
>Reduziert die Ausgaben auf der Konsole auf ein Minimum. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-really-quiet">
<term
><option
>--really-quiet</option
></term>
<listitem
><para
>Nur Warnungen und Fehler ausgeben. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-verbose">
<term
><option
>--verbose</option
></term>
<listitem
><para
>Es werden ausführliche Ausgaben erzeugt, Sie können den genauen Ablauf verfolgen. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-svn-only">
<term
><option
>--svn-only</option
></term>
<listitem
><para
>Führt nur das Aktualisieren der Quellen aus. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-build-only">
<term
><option
>--build-only</option
></term>
<listitem
><para
>Führt nur den Kompiliervorgang durch. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-ignore-modules">
<term
><option
>--ignore-modules</option
></term>
<listitem
><para
>die folgenden auf der Befehlszeile angegebenen Module werden bei der Aktualisierung/Kompilierung ignoriert. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-no-svn">
<term
><option
>--no-svn</option
></term>
<listitem
><para
>Keine Verbindung zum SVN-Server herstellen.Nimmt  </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-no-build">
<term
><option
>--no-build</option
></term>
<listitem
><para
>Den Kompiliervorgang überspringen. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-no-install">
<term
><option
>--no-install</option
></term>
<listitem
><para
>Keine Pakete automatisch installieren, nachdem sie kompiliert wurden. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-debug">
<term
><option
>--debug</option
></term>
<listitem
><para
>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". </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-no-rebuild-on-fail">
<term
><option
>--no-rebuild-on-fail</option
></term>
<listitem
><para
>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. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-refresh-build">
<term
><option
>--refresh-build</option
></term>
<listitem
><para
>Aktualisiert das Kompilier-System und beginnt den Kompiliervorgang von vorne. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-reconfigure">
<term
><option
>--reconfigure</option
></term>
<listitem
><para
>Führt das configure-Skript erneut aus, ohne den Kompilier-Ordner vorher zu bereinigen. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-recreate-configure">
<term
><option
>--recreate-configure</option
></term>
<listitem
><para
>Führt <command
>make <option
>-f</option
> Makefile.cvs</command
> erneut aus und erzeugt das configure-Skript neu. Der restliche Kompiliervorgang ist dann ganz normal. Diese Option schließt automatisch <option
><link linkend="cmdline-reconfigure"
>--reconfigure</link
></option
> ein. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-resume">
<term
><option
>--resume</option
></term>
<listitem
><para
>Versucht, den Kompiliervorgang an der Stelle fortzusetzen, wo er zuletzt unterbrochen wurde. Diese Option schließt automatisch <link linkend="cmdline-no-svn"
><option
>--no-svn</option
></link
> ein. Sie sollten keine weiteren Modul-Namen an der Kommandozeile übergeben. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-resume-from">
<term
><option
>--resume-from</option
></term>
<listitem
><para
>Verhält sich wie <link linkend="cmdline-resume"
><option
>--resume</option
></link
>, außer das Sie den Modul-Namen angeben können, bei dem fortgesetzt werden soll. Diese Option schließt automatisch <link linkend="cmdline-no-svn"
><option
>--no-svn</option
></link
> ein. Sie sollten keine weiteren Modul-Namen auf der Kommandozeile übergeben. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-rc-file">
<term
><option
>--rc-file</option
></term>
<listitem
><para
>Der darauf folgende Parameter ist die Konfigurationsdatei, aus der die Optionen eingelesen werden sollen. Die Voreinstellung für diesen Parameter ist ~/.kdesvn-buildrc. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-prefix">
<term
><option
>--prefix=&lt;/pfad/zu/kde&gt;</option
></term>
<listitem
><para
>Ermöglicht Ihnen, den Ordner zu wechseln, in dem &kde; installiert wird. Diese Option schließt automatisch <link linkend="cmdline-reconfigure"
><option
>--reconfigure</option
></link
> ein. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-build-system-only">
<term
><option
>--build-system-only</option
></term>
<listitem
><para
>Stoppt nach dem Ausführen von <command
>make <option
>-f</option
> Makefile.cvs</command
>. 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 <command
>./configure <option
>--help</option
></command
> betrachten und entsprechende Optionen festlegen. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-install"
><term
><option
>--install</option
></term>
<listitem
><para
>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 <option
>--install</option
> weiter Parameter angeben, werden diese als zu installierende Module interpretiert. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-global-option">
<term
><option
>--&lt;option-name&gt;=</option
></term>
<listitem
><para
>Dies können Sie verwenden, um eine Option in Ihrer Konfigurationsdatei für jedes Modul zu überschreiben. Beispiel: <option
>--log-dir=/pfad/zu/ordner</option
> würde die Option <link linkend="conf-log-dir"
>log-dir</link
> überschreiben. </para
></listitem>
</varlistentry>

<varlistentry id="cmdline-module-option">
<term
><option
>--&lt;modul-name&gt;,&lt;option-name&gt;=</option
></term>
<listitem
><para
>Dies können Sie verwenden, um eine Option in Ihrer Konfigurationsdatei für ein bestimmtes Modul zu überschreiben. Beispiel: Um die Option <link linkend="conf-use-unsermake"
>use-unsermake</link
> für kdemultimedia zu überschreiben, geben Sie <option
>--kdemultimedia,use-unsermake=false</option
> ein. </para
></listitem>
</varlistentry>

</variablelist>

<para
>Alle weiteren Parameter werden als Modul-Namen interpretiert, die aktualisiert oder kompiliert werden sollen. Verwechseln Sie Kompilieren nicht mit Installieren! </para>

</chapter>

<chapter id="credits-and-licenses">
<title
>Danksagungen und Lizenz</title>
&underFDL; </chapter>

</book>
