创建文件依赖部分,需要xh:yh?

com*_*or8 2 c dependencies makefile header

在下面(减少)make文件中,依赖项位于底部.这是我正在编写的实际make文件的一部分.在实际情况中,存在依赖于另一个头的头文件.

我无法在其他地方找到答案所以......我是否需要在依赖于"swap.h:other.h"的效果的底部包含一行?

SRC =       swap.c other.c etc
OBJ =       swap.o other.o etc
EXE =       swap

$(EXE): $(OBJ)
        $(CC) $(CFLAGS) -o $(EXE) $(OBJ) -lm

## Dependencies

swap.o: swap.h other.h
other.o:    other.h
Run Code Online (Sandbox Code Playgroud)

谢谢!

Che*_*evy 7

因为swap.h如果other.h改变即使第一个#includes秒也没有任何关系,简短的答案是否定的.

...但是,如果某些C源包含swap.h和swap.h包含other.h,则other.h中的更改将影响/需要从所述C源生成的对象.

但是,通常,您不希望手动维护标头依赖关系.这很费力且容易出错.

有几种方法可以自动生成这些依赖项.

我可以推荐高级自动相关生成纸.这种方法并不完美,但它与Makefiles一样好.