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指定一个路径或者几个路径,来替代依赖集合中的绝对路径和相对路径