linux之Makefile语法

linux之Makefile语法
1.在同一级目录下创建文本文档Makefile文件,和hello.c的文件,#在Makefile中是注释的意思。
2.用make直接进行编译,会生成.o、.i、.S.等文件。
第一层 显示规则:

1.目标文件:依赖文件(可以省去预编译,汇编,编译)

​ [Tab键]指令

2.第一个目标文件是我们的最终目标,下面的hello是我们的最终目标。

3.伪目标:.PHONY:

rm -rf hello.S hello.i hello.o(指定删除你不需要的文件)

4.Makefile文件书写

hello:hello.o  //hello是目标文件,hello.i是依赖文件
    gcc hell.o -o hello
hello.o:hello.S
    gcc -c hello.S -o hello.o
hello.S:hello.i
    gcc -S hello.i -o hello.S
hello.i:hello.c   //hello.i是目标文件,hello.c是依赖文件
    gcc -E hello.c -o hello.i
    
        
        
上面的可以直接由下面的得到目标文件hello文件
 hello:hell.o  //hello是目标文件,hello.o是依赖文件
     gcc hello.o -o hello //可以直接得到hello        
hello.o:hello.c
    gcc -c hello.c -o hello.o
     
     
     
     .PHONY:  //固定的格式
clear:   //自定义的名字,作用是删除你不需要的东西,可以在终端执行 make clear进行删除
	rm  -rf   hello.S  hello.i   hello.o
        
        
        
        

第二层 变量

在第一层的基础上进行变量替换:

变量 = (替换) +=(追加) :=(恒等于)

示例:

VAL=hello           //替换
VAL+=hello1         //追加
A:=gcc             //恒等于,gcc为不可变内容
B=hello.o


书写规范:注意加上一个$(变量名);
$(VAL):$(B)        //VAL是目标文件,B是依赖文件
第三层 隐含规则:

%.c(任意的.c文件 *.c(所有的.c文件)

%.c:%.o
	gcc -c %.c -o %.o
第四层 通配符

最常见的几个指令:

$@ 所有的目标文件 $^ 所有的依赖文件 $< 所有依赖文件的第一个文件

希望对你们有帮助,制作不易,转载请标明出处:

https://zhajianliang.github.io

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值