make file:header包含另一个头文件C ++

时间:2012-07-02 01:41:13

标签: c++ makefile

我有3个文件

main.cpp
a.h
b.h

main.cpp包括a.h和b.h. b.h包括a.h

任何人都可以解释我应该如何为此编写一个make文件?

这是对的吗?

objects = main.o 
sources = main.cpp

myProj: $(objects) 
    g++ -o myProj $(objects)

main.o: a.h b.h 


$(objects): $(sources)
    g++ -c $(sources)

clean:
    rm $(objects) myProj

我不知道如何在a.h

上指定b.h的依赖关系

2 个答案:

答案 0 :(得分:2)

由于标头始终是作为.c / .cpp文件的一部分编译的,因此无需指定标头到标头的依赖关系。您已经指定的依赖关系已经足够,因为当{h和/或b.h发生更改时main.cpp将重新编译。

答案 1 :(得分:1)

如果您对makefile概念感到困惑,我建议您查看这个有用的教程。

http://www.cs.umd.edu/class/fall2002/cmsc214/Tutorial/makefile.html