Bevor Linux auf der Bildfläche erschien, wurden Programm-Pakete in
Source-Form zur Verfügung gestellt, die in komprimierte
Tar-Archive (auch als Tar-Ball bezeichnet)
verpackt wurden. Während früher hauptsächlich das Unix-eigene compress zum
Komprimieren verwendet wurde, ist es inzwischen weitgehend von gzip
verdrängt worden, das einen besseren Komprimierungs-Faktor erzielt. Vereinzelt
wird auch bzip2 eingesetzt (z. B. von http://www.blackdown.org), da es
noch einen Tick besser ist (vgl. Abbildung "tar-archive.png"} -- hier wurde
zum Vergleich die Tar-Datei von tkcvs 6.4 herangezogen)
 |
Typische Komprimierung von compress, gzip und bzip2
|
Endung
|
komprimiert mit
|
auspacken mit
|
.tar
|
(ohne)
|
tar xvf ...
|
.tar.Z
|
compress
|
tar Zxvf ...
|
.tar.gz
|
gzip
|
tar zxvf ...
|
.tgz
|
gzip
|
tar zxvf ...
|
.tar.bz2
|
bzip2
|
tar jxvf ...
|
Das GNU-tar-Kommando, das üblicherweise bei allen
Linux-Distributionen verwendet wird, kann mit komprimierten Tar-Archiven
umgehen (s. Tabelle). Andere Unix-Systeme (z. B. SunOS)
verwenden eine andere Tar-Implementierung. Hier muss man zuerst das
Archiv dekomprimieren (mit uncompress, gunzip oder bunzip2),
ehe man die Tar-Datei auspacken kann.
Vereinzelt findet man auch im Linux-Bereich Zip-Archive vor, erkennbar an
der Endung .zip. Diese werden mit unzip ausgepackt.
Nachdem das Tar-Archiv erfolgreich ausgepackt ist, sollte man nach einer Datei
README oder INSTALL Ausschau halten. Dort steht beschrieben, wie das
Paket übersetzt und installiert wird. Unabhängig von der Plattform und
Distribution sind es meist folgende Schritte, die ausgeführt werden:
-
./configure oder make config
Im ersten Schritt wird untersucht, um was
für ein System (Linux, Unix, ...) es
sich handelt, welche Bibliotheken vorhanden
sind und ob die zur Kompilierung benötigten Tools
wie C-Compiler (gcc) oder Linker (ld) installiert sind,
um daraus ein Makefile
zu generieren.
-
make
Mit Hilfe des Makefiles, das im ersten Schritt erzeugt wurde, wird das Paket
übersetzt.
-
make test (optional)
Mit diesem Schritt wird überprüft, ob die Kompilation erfolgreich war.
-
make install
Damit wird das Paket installiert.
Hilfreich bei der Übersetzung ist die Option -n des
make-Kommandos. Damit kann man make erst einmal trocken ausführen,
um zu sehen, welche Kommandos alle ausgeführt werden und in welches Verzeichnis
welche Dateien kopiert werden, um nötigenfalls das Makefile noch anpassen zu
können.
Auch wenn dieses Verfahren meist problemlos funktioniert, hat die Sache einen
Haken: an die Deinstallation hat der Autor meistens nicht
gedacht, d. h. ein make uninstall wird in den wenigsten Fällen
klappen. Und so bleiben die installierten Dateien bis in alle Ewigkeit im
System, es sei denn, man hat sich bei der Installation gemerkt, welche Dateien
wohin kopiert wurden und löscht sie manuell.
Weitere Nachteile der manuellen Installation:
-
Auf dem Zielsystem müssen alle Werkzeuge (Compiler, Linker, Make etc.),
Bibliotheken und Headerdateien zum Kompilieren des Programmes vorhanden
sein.
-
Bei der Installation einer neueren Version eines Programmes (Update)
werden evtl. die bereits vorhandenen, an das System
angepassten Konfigurationsdateien der alten Version überschrieben.
|