Makefile-brakujący separator [duplikat]

Możliwy duplikat:
Make error: missing separator

Mieć ten kod w makefile:

PROG = semsearch
all: $(PROG)
%: %.c
gcc -o $@ $< -lpthread

clean:
rm $(PROG)

I błąd

missing separator. stop.
Czy ktoś może mi pomóc?
Author: Community, 2013-01-01

1 answers

Musisz poprzedzić linie zaczynające się od gcc i rm twardą tabulacją. Polecenia w regułach make muszą zaczynać się od tabulacji (chyba że w tym samym wierszu znajdują się średniki). Wynik powinien wyglądać tak:

PROG = semsearch
all: $(PROG)
%: %.c
        gcc -o $@ $< -lpthread

clean:
        rm $(PROG)

Zauważ, że niektóre edytory mogą być skonfigurowane tak, aby wstawiać sekwencję spacji zamiast twardej karty. Jeśli na początku tych linii znajdują się spacje, zobaczysz również błąd "brakujący separator". Jeśli masz problemy z wstawianiem twardych kart, użyj średnika sposób:

PROG = semsearch
all: $(PROG)
%: %.c ; gcc -o $@ $< -lpthread

clean: ; rm $(PROG)
 198
Author: Jens,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-01-01 10:59:17