Hier ist ein vereinfachtes Makefile:Wie setze ich Umgebungsvariablen im Makefile-Rezept?
all:
@for ((i = 0; i < 5; ++i)); do \
var="$$var $$i"; \
echo $$var; \
done
@echo $$var
ich den Wert von "var" annehmen "0 1 2 3 4", aber der Ausgang ist:
0
0 1
0 1 2
0 1 2 3
0 1 2 3 4
<--- NOTHING!!!
Wie Sie die letzte sehen echo ist "NICHTS". Was ist falsch?
Ich nehme an, dass jedes Rezept Befehl in einer Subshell aufgerufen wird, so dass die „var“ in der ersten Rezeptur definiert ist, kann nicht in der zweiten Zeile bezeichnet werden. Ist das richtig? –