Das make-Tool

Strickmaschine

Mit Programmen, Diplomarbeiten und anderen Projekten, bei denen aus mehreren Dateien letzten Endes eine entstehen soll, ist es wie mit Handarbeiten: Für den Topflappen nimmt man noch das Nadelspiel zur Hand, aber wenn´s an den Pullover geht, gibt es nicht umsonst Strickmaschinen – wie make.

Das Tool make wurde ursprünglich von Stuart I. Feldman entwickelt, um dem programmschaffenden Volke ein effektives Werkzeug zur Generierung von Programmen an die Hand zu geben. Dass dies sehr gut gelungen ist, belegt wohl die Tatsache, dass das ursprünglich unter und für Unix geschriebene make auf die meisten heute existierenden Plattformen portiert wurde. Sein Einsatzgebiet beschränkt sich aber schon lange nicht mehr ausschließlich auf die Programmierung.

Was ist make?

Die Standardsituation: Eine Programmiererin abeitet an einem beträchtlichen Haufen Quelldateien, die übersetzt und schließlich zu einem ausführbaren Programm zusammen gelinkt werden müssen. Jedes Mal, wenn eine Änderung an einer Datei vorgenommen wird, muss diese Datei neu übersetzt und dann das ganze Programm erneut gelinkt werden.

Dabei wird sehr schnell ein bedeutendes Problem sichtbar: Die Programmiererin muss sich jeweils alle Dateien merken, die sie modifiziert hat, und zweitens sollte sie auch alle Dateien im Kopf haben, die von diesen modifizierten Dateien abhängig sind.

Genau hier setzt make an. Das make-Tool kompiliert alle modifizierten Dateien sowie alle, die von diesen abhängig sind, und linkt dann alles fein säuberlich zum ausführbaren "Executable" zusammen. Um dieses Wunder zu vollbringen, folgt make haargenau den Anweisungen, die in einer Datei mit dem Namen Makefile festgehalten sind. Praktisch alle Programme, deren Quellcode veröffentlicht ist, und die z.B. auf dem heimischen Rechner übersetzt werden können, werden mittels Makefiles organisiert. Oft hat man dann nicht mehr zu tun, als den Befehl make einzutippen, einen Kaffee trinken zu gehen und dann das frisch übersetzte Programm zu starten.

Wie funktioniert make?

Das Prinzip, nach dem make arbeitet, ist recht einfach. Um die Dateien zu bestimmen, welche neu zu übersetzen sind, schaut make nach, ob schon eine Version des zu erzeugenden Programms existiert. Wenn nicht, werden alle Dateien nach den Anweisungen im Makefile kompiliert. Existiert schon eine alte Programmversion, dann nimmt sich make den "Timestamp" ("Zeitstempel") dieser Version her und vergleicht ihn mit den Timestamps aller Dateien, die in der Abhängigkeitszeile angegeben sind. Ist der Timestamp einer solchen Datei aktueller als jener der alten Programmversion, dann werden diese Datei und alle von ihr abhängigen Dateien neu kompiliert.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Feed me!
    Neuigkeiten müssen schnell auf den Tisch. Genau da liegt die Stärke des komfortablen und individuell anpassbaren Konsolen-Feedreaders Newsbeuter.
  • Quellcode, installierfertig zusammen gestellt
    Sei es ein in "out of the box" vorgestelltes Programm, sei es sonstige Software – im Quellcode vorliegende Programme unter Linux zu kompilieren und zu installieren ist nur selten wirklich schwierig. Da stellt sich die Frage: Wie wird eigentlich ein solches Sourcecode-Paket zusammen gestellt, damit auch alles klappt?
  • RPM-Pakete ohne Vorlage selbst erstellen
    Der Prozess, mit dem Distributoren bestehende Pakete auf eine neue Software-Version heben, erlaubt auch dem Normalanwender den unkomplizierten Bau eigener Pakete.
  • RPM-Pakete selbst bauen
    Die meiste Software für Linux liegt im Quellcode vor und muss kompiliert werden. Dies geht schnell von der Hand, doch spätestens wenn man eine Anwendung wieder loswerden will, fangen die Probleme an.
  • Mit Make komplexe Aufgaben effizient bearbeiten
    Arbeiten Sie an komplexen Projekten mit mehreren Quelldateien, behält Make den Überblick für Sie. Programmierern, LaTeX-Anwendern oder Systemverwaltern greifen gerne auf dieses nützliche Werkzeug zurück.
Kommentare

Infos zur Publikation

LU 10/2017: Daten retten & sichern

Digitale Ausgabe: Preis € 8,50
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Stellenmarkt

Aktuelle Fragen

Lieber Linux oder Windows- Betriebssystem?
Sina Kaul, 13.10.2017 16:17, 2 Antworten
Hallo, bis jetzt hatte ich immer nur mit
IT-Kurse
Alice Trader, 26.09.2017 11:35, 2 Antworten
Hallo liebe Community, ich brauche Hilfe und bin sehr verzweifelt. Ih bin noch sehr neu in eure...
Backup mit KUP unter Suse 42.3
Horst Schwarz, 24.09.2017 13:16, 3 Antworten
Ich möchte auch wieder unter Suse 42.3 mit Kup meine Backup durchführen. Eine Installationsmöglic...
kein foto, etc. upload möglich, wo liegt mein fehler?
kerstin brums, 17.09.2017 22:08, 5 Antworten
moin, zum erstellen einer einfachen wordpress website kann ich keine fotos uploaden. vom rechne...
Arch Linux Netzwerkkonfigurationen
Franziska Schley, 15.09.2017 18:04, 0 Antworten
Moin liebe Linux community, ich habe momentan Probleme mit der Einstellung des Lan/Wlan in Arc...