Makefile – 缺less分隔符
可能重复:
出错:缺less分隔符
在makefile中有这样的代码:
PROG = semsearch all: $(PROG) %: %.c gcc -o $@ $< -lpthread clean: rm $(PROG)
和错误
missing separator. stop.
有人能帮我吗?
您需要在gcc
和rm
开始的行之前加上硬标签。 make规则中的命令需要以选项卡开始(除非它们在同一行上使用分号)。 结果应该是这样的:
PROG = semsearch all: $(PROG) %: %.c gcc -o $@ $< -lpthread clean: rm $(PROG)
请注意,一些编辑器可能被configuration为插入一个空格序列,而不是一个硬标签。 如果在这些行的开始处有空格,您还会看到“丢失的分隔符”错误。 如果插入硬标签时遇到问题,请使用分号方式:
PROG = semsearch all: $(PROG) %: %.c ; gcc -o $@ $< -lpthread clean: ; rm $(PROG)