Software, die das GNU-Buildsystem verwendet, lässt sich mit ./configure
gefolgt von make
und make install
kompilieren und installieren. Mit diesem Artikel möchte ich auf ein paar Features dieses Buildsystems hinweisen.
Build-Verzeichnis
Anstatt das configure-Script im Root-Verzeichnis der Software auszuführen, geht dies auch von einem anderen aus. Dies hat den Vorteil, dass alle erstellten Dateien in einem anderen Verzeichnis landen, also z.B.:
mkdir build
cd build
../configure
make
Nicht nur alle von configure erstellten Dateien landen dann im build-Verzeichnis, sondern auch alle Objekt-Dateien und was sonst noch so durch make erstellt wird.
config.site
Ein weiteres interessante Feature ist, dass das configure-Script am Anfang die Datei prefix/share/config.site lädt. Diese kann normale Shell-Kommandos enthalten. Anstatt also immer per Hand die gewünschten Umgebungsvariablen zu setzen, oder Dinge wie das libdir anzupassen, kann man diese Einstellungen über die config.site erledigen. Siehe Setting Site Defaults.
Make Targets
Alle kompilierten und andere durch make erstellte Dateien entfernt man mit make clean
. Mit make distclean
kann man auch alle durch configure erstellte Dateien löschen. Desweiteren gibt es noch make maintainer-clean
, das alle reproduzierbaren Dateien löscht, bis auf das configure script und andere Dateien, die für configure erforderlich sind. Auch interessant ist make check
, was Tests für die Software ausführt (falls welche vorhanden sind).
Desweiteren möchte ich noch mal meinen Artikel über den DESTDIR-Parameter bei make install
erwähnen.
Kommentare