Wichtig ist, daß die Befehle mit Tab's eingerückt werden,
nicht mit Leerzeichen.
makefile:5: *** missing separator. Stop.
Achtung:
lib.a:
cd ./lib
make lib.a
cd ..
funktioniert nicht wie erwartet, da make lib.a
in einer neuen
Shell ausgeführt wird.
make bricht nach der ersten shell-line, die nicht 0 zurückgibt mit einer Fehlermeldung ab.
Falls man das nicht will:
- COMMAND
Dann bricht make nicht ab, sondern gibt nur eine Warnmeldung aus.
clean:
- rm *.o
Ein @ als erstes Zeichen eine Kommandos unterdrückt das Ausgeben der
Kommandozeile
foo.o: foo.c lib.h
@echo Baue foo
@$(CC) $(CFLAGS) -o foo.o foo.c