Makefile文件的编写

本文详细介绍了Makefile文件的编写规则,包括目标、依赖和命令的定义,以及如何通过make命令执行这些规则来自动化构建过程。通过实例演示了不同目标调用顺序的影响,并解释了如何确保目标文件的正确生成。
摘要由CSDN通过智能技术生成

Makefile文件的编写规则

target ... : prerequisites ...

            command

            ...

target也就是一个目标文件,可以是目标文件(Object File),也可以是执行文件。还可以是一个标签(Label),prerequisites就是,要生成那个target所需要的文件或是目标文件或是标签。 command也就是make需要执行的命令(任意的Shell命令或gcc命令)。

 

例如:

①all

gcc  -o  app  app.o

string:

gcc  -c  ../../string.c  -o ../ string.o

clean:

    rm  -rf  ../*.o

在命令行模式下输入make命令自动执行第一个标号all处的命令(gcc -c  app.c  -o  app)。

也可以在命令行模式下输入make string命令,就会执行标号string处的命令(gcc  -c  string.c  -o  string.o);

 

如果程序这样写

②allstring

gcc  -c  app.c  -o  app

string:

gcc  -c  string.c  -o  string.o

clean:

    rm  -rf  ../*.o

在命令行模式下输入make命令时会先执string标号处的命令在执行,再执行all标号处的命令。

 

如果程序这样写

③allstring.o

gcc  -c  app.c  -o  app

string.o:

gcc  -c  string.c  -o  string.o

clean:

    rm  -rf  ../*.o

此时的allstring.o中的string.o为命令gcc  -c  string.c  -o  string.o生成的目标文件(string.o),意思为如果在当前目下没有string.o的目标文件,就会把string.o当作标号,来执行标号string.o处的命令。目的就是是如果没有生成目标文件(string.o)时,先去生成

目标文件(string.o)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值