In der Welt der freien Software ist es üblich, den Quellcode zu studieren oder auch Korrekturen an fehlerhaftem Code vorzunehmen. Um dieses zu tun, muß der Quellcode des Programms heruntergeladen werden. Das APT-System bietet eine einfache Möglichkeit, den Quellcode der vielen Programme der Distribution einschließlich aller für das Erstellen eines .deb des Programms nötigen Dateien zu beziehen.
Eine andere übliche Anwendung für Debian-Quellen ist es eine aktuellere Version eines Programms aus der Distribution "unstable" zum Beispiel in "stable" zu benutzen. Das Paket "gegen" "stable" zu kompilieren erzeugt ein Paket mit Abhängigkeiten, die auf die Pakete aus "stable" ausgerichtet sind.
Hierfür sollte der deb-src-Eintrag in Ihrer /etc/apt/sources.list auf "unstable" zeigen. Es sollte außerdem aktiviert sein, d.h. eventuelle Kommentarzeichen vor der Zeile müssen entfernt werden (Siehe Abschnitt Die Datei /etc/apt/sources.list, Abschnitt 3.1).
Um ein Quellpaket herunterzuladen, benutzen Sie folgendes Kommando:
# apt-get source Paketname
Drei Dateien werden daraufhin heruntergeladen: ein .orig.tar.gz, ein .dsc und ein .diff.gz. Im Falle von Paketen, die speziell für Debian erzeugt wurden, fällt das letzte weg und das erste hat kein "orig" im Namen.
Die Datei .dsc wird von dpkg-source benutzt, um das Quellpaket in das Verzeichnis Paketname-Version zu entpacken. In jedem heruntergeladenen Quellpaket befindet sich ein Verzeichnis debian/, welches die für das Bauen des .deb-Paketes nötigen Dateien enthält.
Um das Paket beim Herunterladen automatisch zu erzeugen, fügen Sie einfach -b zur Kommandozeile hinzu:
# apt-get -b source Paketname
Wenn Sie sich dazu entscheiden, das Paket noch nicht beim Herunterladen zu erzeugen, können Sie dieses später nachholen mittels
# dpkg-buildpackage -rfakeroot -uc -b
in dem Verzeichnis, welches für das Paket nach dem Herunterladen erstellt wurde. Um das zuvor erzeugte Paket zu installieren, muß man den Paketmanager direkt einsetzen:
# dpkg -i Datei.deb
Es besteht ein Unterschied zwischen der Methode "apt-get
source" und den anderen Methoden von apt-get
.
Die source- Methode kann von normalen Benutzern ohne Root-Rechten
benutzt werden. Die Dateien werden in das Verzeichnis heruntergeladen, aus dem
das apt-get source Paket aufgerufen wurde.
Normalerweise müssen sich spezielle Bibliotheken auf dem System befinden, um ein Quellpaket zu kompilieren. Alle Quellpakete haben ein Feld mit Namen "Build-Depends" in ihrer Kontrolldatei, welches die Namen der zusätzlichen Pakete enthält, die für das Erzeugen des Paketes aus dem Quellcode nötig sind.
APT bietet eine einfache Möglichkeit diese Pakete herunterzuladen. Führen Sie einfach apt-get build-dep Paket aus, wobei `Paket' für den Namen des Pakets, welches Sie erzeugen wollen steht. Beispiel:
# apt-get build-dep gmc Reading Package Lists... Done Building Dependency Tree... Done The following NEW packages will be installed: comerr-dev e2fslibs-dev gdk-imlib-dev imlib-progs libgnome-dev libgnorba-dev libgpmg1-dev 0 packages upgraded, 7 newly installed, 0 to remove and 1 not upgraded. Need to get 1069kB of archives. After unpacking 3514kB will be used. Do you want to continue? [Y/n]
Die Pakete, die hier installiert werden, werden gebraucht, um gmc
korrekt zu erzeugen. Beachten Sie jedoch, daß dieses Kommando sich nicht um
das Quellpaket selbst kümmert, welches Sie bauen möchten. Sie müssen hierfür
zusätzlich apt-get source ausführen.
Falls Sie nur feststellen möchten, welche Pakete zum Bau eines bestimmten Paketes benötigt werden, ist eine Variante des Kommandos apt-cache show (Siehe Informationen über Pakete, Kapitel 6 hilfreich, die neben anderer Information die Zeile Build-Depends aufführt, die ihrerseits die erforderlichen Pakete auflistet.
# apt-cache showscrc Paket
APT HOWTO
1.8.4 - April 2003kov@debian.org
netzwurm@debian.org