Ich habe folgendes Makefile:
%Vor%Problem ist, dass nur ein Befehl dieser Datei ausgeführt wird, also wenn ich den nächsten & lt; Ich muss den vorherigen Befehl löschen oder kommentieren. Was ist mit diesem Makefile falsch?
Dies ist beabsichtigt. Sie können make
angeben, welche Ziele erstellt werden sollen:
erstellt diese beiden Ziele. Alternativ können Sie, wenn Sie make
standardmäßig alle (oder einige) Ziele erstellen möchten, eine Regel am Anfang des Makefiles angeben , die besagt:
Nun wird make all
(oder nur make
) alle abhängigen Ziele erstellen. Es ist auch eine gute Übung, all
als falsches Ziel zu deklarieren, um make
, dass es keiner tatsächlich existierenden Datei entspricht. Tun Sie dies, indem Sie .PHONY: all
in das Makefile einfügen.
Eine letzte Bemerkung, der Name all
ist beliebig. Sie könnten hier einen anderen Namen verwenden, aber all
ist konventionell. Der wichtige Teil ist, dass es die erste Regel in Ihrem Makefile ist, wenn Sie möchten, dass sie ausgeführt wird, wenn Sie make
ohne explizite Ziele aufrufen.
Tags und Links makefile