【发布时间】:2016-09-17 07:52:07
【问题描述】:
我正在尝试构建一个新的 makefile,但我遇到了错误,相同的 makefile 的代码如下:
ifeq($(ARCH),bbb)
$(CC)=arm-linux-gnueabi-gcc
else ifeq($(ARCH),frdm)
$(CC)=arm-none-eabi-gcc
else
$(CC)=gcc
endif
CFLAGS=-c
CFLAG=-o
all:memory.o data.o proj_1.o main.o
$(CC) memory.o data.o proj_1.o main.o $(CFLAG) main
main.o: main.c
$(CC) main.c $(CFLAGS)
memory.o: memory.c
$(CC) memory.c $(CFLAGS)
data.o:data.c
$(CC) data.c $(CFLAGS)
proj_1.o:proj_1.c
$(CC) proj_1.c $(CFLAGS)
clean:
rm -rf *o
错误信息是
test.mk:1: *** missing separator. Stop.
谁能指出我做错了什么?
谢谢
【问题讨论】:
-
请注意,make 将在执行分配之前扩展
$(CC)=arm-linux-gnueabi-gcc。$CC在正常情况下是cc,所以 make 执行cc = arm-linux-gnueabi-gcc,我怀疑这是你想要的。