这个简单的Makefile有什么问题?

时间:2013-11-22 02:29:42

标签: c makefile

我有两个c文件:a4.c和a4Defs.h

代码编译正常:gcc -o a4 a4.c a4Defs.h

我已经构建了这个简单的makefile但是当我做'make'时我得到了这个错误:

gcc -c a4Defs.h
gcc -c a4.c
gcc -o a4 a4.o a4Defs.o
gcc: error: a4Defs.o: No such file or directory
make: *** [a4] Error 1

我的makefile出了什么问题?

a4: a4.o a4Defs.o
    gcc -o a4 a4.o a4Defs.o

a4.o:   a4.c a4Defs.o
    gcc -c a4.c

a4Defs.o:   a4Defs.h
    gcc -c a4Defs.h

clean:
    rm -f *.o a4

1 个答案:

答案 0 :(得分:0)

a4Defs.h是一个头文件而不是.c文件,因此编译它没有任何意义。

你的make文件看起来应该是这样的

a4: a4.o
    gcc -o a4 a4.o

a4.o:   a4.c a4Defs.h
    gcc -c a4.c


clean:
    rm -f *.o a4