Makefile的使用(持更)

2020-11-19  本文已影响0人  ChennelCiel

1. gcc编译器选项

-o,表示输出的可执行文件名。
-c,表示只要求编译器输出目标代码,而不必要输出可执行文件。
-g,表示要求编译器在编译的时候提供我们以后对程序进行调试的信息。

gcc -o hello hello.c 
# 表示利用hello.c,生成可执行文件名hello,后续只需运行./hello即可

2. Makefile的一般格式

target:components
TAB rule
在Makefile中由#开始的行都是注释行,Makefile中最重要的是描述文件的依赖关系的说明。例如:

main:main.o tool1.o tool2.o
  gcc -o main main.o tool1.o tool2.o

表示目标(target)main的依赖对象(components)是main.o tool1.o tool2.o 当修改了依赖的对象后,就要执行规则所在行的命令(rule)。注意,其中的TAB,表示的是TAB键。

3. 常用变量符号的使用

$@ 表示目标文件,$^ 表示所有的依赖文件,$< 表示第一个依赖文件。
例如上述例子可以改写为:

main:main.o tool1.o tool2.o
gcc -o $@ $^

4. 缺省规则

.c.o:这个规则表示所有的 .o文件都是依赖与相应的.c文件的。

上一篇下一篇

猜你喜欢

热点阅读