我一直在我的c++项目中使用makefile。然而,我试图将它转换成C语言,并试图用gcc编译,得到一个这样的错误:microc'. Stop.需要的make: *** No rule to make target*.o
这是我的makefile:
CC=gcc
CFLAGS=-c -std=gnu99 -Wall -pedantic
LDFLAGS=
SOURCES=*.c
OBJECTS=$(SOURCES:.c=.o)
EXECUTABLE=microc
all: $(SOURCES) $(EXECUTABLE)
$(EXECUTABLE): $(OBJECTS)
$(CC) $(LDFLAGS) $(OBJECTS) -o $@
.c.o:
$(CC) $(CFLAGS) $< -o $@
clean:
rm -rf *o microc发布于 2013-04-30 21:44:21
您不能使用SOURCES=*.c。这只是将变量设置为字符串*.c,因此OBJECTS就是字符串*.o。你想(假设你使用的是GNU make):
SOURCES := $(wildcard *.c)https://stackoverflow.com/questions/16301365
复制相似问题