“makefile:10: *** 遗漏分隔符 。 中止。”
spa
在终端下输入make时出现“makefile:2: *** 遗漏分隔符 。 中止。”问题,缘由是编写makefile文件时:
exam:exam.c
gcc -o exam
gcc前必定要 有一个tab分隔符,不能有空格;不然会出现“makefile:2: *** 遗漏分隔符 。 中止。”问题
make中规定每一Shell命令以前的开头必须使用字符。
如下是一个通用的makefile
#----------------------一个通用的makefile--------------------
########################################################
#直接拷贝到工做目录 下,要求,.h和.c文件均在工做目录下
#直接运行make就可编译出可执行文件,make clean清除
########################################################
#编译器
CC = gcc
FLAG = -g
#须要的连接库名称如 -lm -lcdk -lncurses等
INCLUDE =
#当前目录
CURRENT_DIR += .
#头文件目录
HEADFILE_DIR += /usr/local/include
#生成的可执行文件名称
EXENAME = compileok
########################################################
ADDED_CFLAGS += -I$(CURRENT_DIR) -I$(HEADFILE_DIR)
SRC = $(wildcard *.c)
OBJS = $(patsubst %.c,%.o,$(SRC))
$(EXENAME) : $(OBJS)
$(CC) $(ADDED_CFLAGS) $(FLAG) -o $@ $(OBJS) $(INCLUDE)
$(OBJS) : $(SRC)
$(CC) $(ADDED_CFLAGS) $(FLAG) -c $(SRC) $(INCLUDE)
.PHONY: clean
clean :
-rm -rf *.o $(EXENAME)
#----EOF-------编译器