「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-------編譯器