2014-03-25 7 views

Antwort

22

Es sieht in der Datei Zeitstempel - einfach so. Wenn eine Abhängigkeit neuer als das Ziel ist, wird das Ziel neu erstellt.

+0

Nur noch eine Sache ... Es behandelt diese Änderungen wie zum Beispiel 'git' tut? Ist es möglich, diese Datei zu lesen? Danke :) – makeMonday

+0

@makeMonday: Ich verstehe deine Frage nicht. Was Makefile macht, ist genau das, was Clifford in Ihrer Antwort gesagt hat. Dinge wie eine Kopie der vorherigen Datei zu behalten, um mit einem neueren zu vergleichen, ist nicht Teil von 'Make' Job. –

+1

@TheMask Ja, jetzt verstehe ich völlig. Ich habe über diese Zeitstempel gelesen. Ich habe mich nur gefragt, wie sie funktionieren. Danke;) – makeMonday

4

Machen Sie Arbeit, indem Sie Informationen über Dateien untersuchen, nicht deren Inhalt.

Machen Sie Abhängigkeiten zwischen Zielen und ihren Abhängigkeiten aus und überprüfen Sie, ob die Dateien vorhanden sind. Wenn dies der Fall ist, fragt es das Betriebssystem nach der Uhrzeit und dem Datum, an dem die Datei zuletzt geändert wurde. Dies ist der "Zeitstempel" für diesen Zweck, obwohl der Begriff andere Bedeutungen haben kann.

Wenn eine Zieldatei entweder nicht existiert oder vorhanden ist und älter ist als ihre abhängige Datei, dann erstellt Make das Ziel vom abhängigen System neu, indem es eine Regel anwendet.

Wenn das abhängige nicht vorhanden ist, machen Sie Signale zu einem Fehler.

Eine Konsequenz daraus ist, dass Sie eine Neuerstellung erzwingen können, indem Sie das Ziel löschen oder indem Sie das abhängige Objekt berühren, um es später als das Ziel zu machen. Sie können eine Neuerstellung vermeiden, indem Sie das Ziel berühren. Beim Berühren wird einfach der Zeitstempel aktualisiert.