Makefile

Table of Contents

1 自动化变量

1.1 $< 表示所有依赖目标集 即 代表所有的 *.cpp *.c

1.2 $@ 表示多有目标集 即 代表所有的 *.o

2 算是一点心得吧。其实是一点点理解

写写,方便记忆

2.1 GCC 中的 -I参数

此参数用来引用一些头文件,即在源码文件中(.c .cpp) include了某个头文件,而没有指定实际的/真实的路径, 则,gcc在编译的时候只会在当前路径搜索这个头文件,当然是找不到了。会导致编译失败。 此时就用的到 -I 参数了,用-Ipath来指定头文件的路径, gcc -Ipath * 这样就可以正常编译了。

2.2 Makefile中的VPATH vpath

现在可以理解为:当需要编译其他目录下的文件的时候,可以使用vpath或者VPATH来指定这个其他目录的路径。

2.3 在makefile中指定编译其他目录的文件

需要在依赖集合中指定需要编译的文件的路径,绝对路径 相对路径都可以,能让make命令找到这个文件就行

这样编译后生成的.o文件就和makefile在同一个路径下了。

这个时候 makefile的VPATH和vpath就派上用场了。可以使用vpath 或者 VPATH指定一个路径或者几个路径,来替代依赖集合中的绝对路径和相对路径


Author: weikent (weishijian@weikents-MacBook-Air.local)

Date:

Emacs 24.4.1 (Org mode 8.2.10)

Validate