Makefile错误:make all命令

时间:2015-07-29 19:36:21

标签: makefile

这是makefile:

all: main

main: main.o sum/sum.o sum/add/add.o utils/utils.o
    gcc -Wall main.o sum/sum.o sum/add/add.o utils/utils.o -o main

main.o: main.c utils/utils.h sum/sum.h
    gcc -Wall -c main.c

sum/sum.o: sum/sum.c sum/sum.h add/add.h
    gcc -Wall -c sum/sum.c

sum/add/add.o: sum/add/add.c add.h
    gcc -Wall -c sum/add/add.c

utils/utils.o: utils/utils.c
    gcc -Wall -c utils/utils.c

clean:
    rm -f main main.o sum/sum.o sum/add/add.o utils/utils.o *~

当我在bash中运行make all时,我会收到如下错误:

-make: *** No rule to make target `add.h', needed by `sum/sum.o'.  Stop.

-make: *** No rule to make target `sum.c', needed by `sum/sum.o'.  Stop.

我有一个目录,其中包括:

.:
main.c  main.o  Makefile  sum  utils

./sum:
add  sum.c  sum.h

./sum/add:
add.c  add.h

./utils:
utils.c  utils.h

我哪里出错了?

0 个答案:

没有答案