2014-01-05 45 views
1

我得到這個錯誤:***缺少分隔符。停止。讓文件在C

make:7: *** missing separator. Stop. 

Line7:

$(CXX) -o $(TARGET) $(OBJS) $(LIBS) 

這裏是代碼:

CXXFLAGS = -O2 -g -Wall -fmessage-length=0 
OBJS =  main.c 
LIBS = 
TARGET =  main.exe 

$(TARGET): $(OBJS) 
    $(CXX) -o $(TARGET) $(OBJS) $(LIBS) 
all: $(TARGET) 
clean: 
    rm -f $(OBJS) $(TARGET) 
+0

我修改後的代碼爲:'CXXFLAGS = -O2 -g -Wall -fmessage長度= 0 OBJS = main.c中 LIBS = TARGET = MAIN.EXE $(TARGET):$ (OBJS) TAB $(CXX)-o $(TARGET)$(OBJS)$(LIBS) 所有:$(TARGET)\t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t 清潔: TAB RM -f $(OBJS)$(TARGET)」但我仍然有同樣的錯誤。 – user3162234

回答

1

目標行動必須有一個初步的TAB字符 - 不是空格。

$(TARGET): $(OBJS) 
    $(CXX) -o $(TARGET) $(OBJS) $(LIBS) 

^^^^ 
TAB 
clean: 
    rm -f $(OBJS) $(TARGET) 
^^^^ 
TAB 
+0

感謝您的幫助,但是當我應用它時,它給了我同樣的錯誤? – user3162234

+0

你能解釋一下你的意思嗎? 你的意思是我在清潔前寫TAB嗎? ,我這樣做,但我仍然有同樣的錯誤。 – user3162234

+0

在'$(CXX)'之前和'rm -f'之前插入TAB(沒有空格)。 – suspectus