1. Einleitung

Oft kommt es vor, daß das ein oder andere Programm, welches man unbedingt testen möchte, nur im Quellcode vorliegt. In einem solchen Fall lädt man sich das passende Archiv herunter, entpackt es und übersetzt es anschließend manuell. So weit, so gut. Was aber geschieht, wenn man das Programm wieder deinstallieren möchte?

Eine adäquate Routine zur sauberen Deinstallation des Pakets ist nur in den seltensten Fällen im Makefile enthalten. Natürlich bestünde noch die Möglichkeit, das Programm in ein temporäres Verzeichnis zu installieren und sich die neu erstellten Dateien und Verzeichnisse für ein späteres Entfernen zu notieren. Diese Vorgehensweise ist allerdings mühsam und aufwendig, wenn häufig Programme aus den Quellen kompiliert werden. Abhilfe schafft das von Felipe Eduardo Sánchez Díaz Durán geschriebene Tool CheckInstall [1].

Im Regelfall wird ein GNU Autoconf konformes Programm unter Verwendung der allseits bekannten Befehlsfolge ./configure && make && make install kompiliert und installiert. Dabei versucht das configure-Shellskript geeignete Werte für diverse systemabhängige Variablen abzuschätzen, die dann während der späteren Kompilierung verwendet werden und prüft somit, ob alle diesbezüglichen Voraussetzungen für einen erfolgreichen Durchlauf erfüllt werden. Jene Werte werden auch zur Erstellung eines oder mehrerer Makefiles benutzt. Weiterhin erzeugt das configure-Skript zusätzliche Dateien. Zusammenfassend lauten diese:

Nachdem das configure-Skript erfolgreich beendet wurde, wird der Befehl make aufgerufen. Dieser stößt die eigentliche Kompilierung an und erzeugt schließlich die entsprechenden Binaries, also ausführbaren Programmcode. Unter Umständen besteht unmittelbar nach dem Aufruf von make die Möglichkeit, mittels make check noch diverse Selbsttests zu fahren. Dies ist allerdings ein optionaler Schritt, da das Paket diesen Vorgang auch hinreichend unterstützen muss. Wenn make seine Arbeit erfolgreich verrichtet und die jeweiligen Binaries erstellt hat, kann das kompilierte Programm durch den Befehl make install ins System eingebunden werden - dazu sind aus naheliegenden Gründen jedoch privilegierte Benutzerrechte erforderlich. Da das Programm nun erfolgreich installiert wurde, können die durch die Kompilierung erzeugten Binaries durch den Befehl make clean bedenkenlos aus dem Quellverzeichnis gelöscht werden. Um auch die vom configure-Skript erstellten Dateien zu löschen, bedarf es eines Aufrufs von make distclean. Die beiden letztgenannten Schritte sind aber, ebenso wie der Aufruf von make check, optional und werden in der Regel nur dazu benutzt, um Festplattenkapazität zu sparen und die Verzeichnisstruktur übersichtlich zu halten. Ferner ermöglicht der Aufruf von make distclean die Kompilierung des Programms für andere Systeme.

Weiterführende Informationen zu GNU Autoconf lassen sich im Online-Manual unter [2] finden. Neben einer grundlegenden Einführung erfährt man mehr über das GNU Build System, die Erstellung von eigenen configure-Skripten, zur Programmierung in M4 und der Erstellung eigener Makros, portabler Shell-Programmierung et cetera.