gcc,makefile没有正确链接

时间:2013-09-30 08:50:18

标签: gcc makefile

我有这个makefile:

CC=gcc
CFLAGS= -c -Wall -std=c99 -ggdb

all: plan

plan: plan.o graph.o
    $(CC) $(CFLAGS) plan.o graph.o -o plan

plan.o: plan.c graph.h
    $(CC) $(CFLAGS) plan.c

graph.o: graph.c graph.h
    $(CC) $(CFLAGS) graph.c

run: all
    ./plan

当我运行make时,gcc给我留言“链接器输入文件未使用,因为链接没有完成”,这是什么意思?

1 个答案:

答案 0 :(得分:2)

-c选项表示:

  

编译或汇编源文件,但不要链接。链接阶段根本没有完成。最终输出是每个源文件的目标文件形式。

构建时不应使用该选项。

请参阅gcc man

更新

对于计划目标,请勿使用CFLAGS:

plan: plan.o graph.o
    $(CC) -Wall -std=c99 -ggdb plan.o graph.o -o plan