为什么不能通过使用$来识别Makefile中规则的右侧?

时间:2011-12-07 05:05:39

标签: c makefile

所以我创建了一个将所有.c文件转换为.o文件的规则。我使用变量$将规则的右侧放入配方中。 $ @的左侧是好的,但右侧是空的。我记得我用$做了一个类似的Makefile,它有效。

CFLAGS =-c -g

all:server client

server:server.o
        gcc -o server server.o

client:client.o
        gcc -o client client.o

clean:
        rm *.o server client

%.o:%.c
        gcc ${CFLAGS} -o $@ $
server.o : server.c
client.o : client.c

1 个答案:

答案 0 :(得分:4)

应该是$<,而不仅仅是$。请参阅info "(make) Automatic Variables"