Ubuntu下学习Makefile(下)

Ubuntu下学习Makefile(下)

一、创建和使用变量

1、变量定义的两种方式

1、递归展示方式VAR=var
2、简单方式 Var: = var 
变量使用$(VAR)
用"$"则用"$$"来表示
类似于编程语言中的宏

在这里插入图片描述

为变量添加值
在这里插入图片描述

2、预定义变量

AR 库文件维护的名称,默认值为ar。AS汇编程序的名称,默认值为as。
CC C编译器的名称,默认值为cc。CPP c预编译器的名称,默认值为$(CC) -E
CXX C++编译器的名称 默认值为g++。
FC FORTRAN编译器的名称,默认值为f77
RM 文件删除程序的名称,默认值为rm -f

3、自动变量

在这里插入图片描述

二、Make使用

在这里插入图片描述

三、Makefile的隐含规则

1、隐含规则1:编译C程序的隐含规则

“<n>.o"的目标的依赖目标会自动推导为“<n>.c”,并且其生成命令是”$(cc) -c $(CPPFLAGS) $(CFLAGS)"

2、隐含规则2:链接Object文件的隐含规则

在这里插入图片描述
实例:
在这里插入图片描述
在这里插入图片描述

四、Makefile的VPATH

1、VPATH的用法

在这里插入图片描述
没加VPATH前,需要在.o前加上路径*
在这里插入图片描述

在这里插入图片描述
加VPATH之后在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2、Makefile的嵌套

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

总结

linux中make是用来编译的,它从Makefile中读取指令,然后编译。make的作用是开始进行源代码编译,以及一些功能的提供,这些功能由他的 Makefile 设置文件提供相关的功能。
比如make install一般表示进行安装,make uninstall 是卸载,不加参数就是默认的进行源代码编译。
make是 Linux 开发套件里面自动化编译的一个控制程序,他通过借助 Makefile 里面编写的编译规范进行自动化的调用 gcc 、ld 以及运行某些需要的程序进行编译的程序。
一般情况下,他所使用的 Makefile 控制代码,由 configure 这个设置脚本根据给定的参数和系统环境生成。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值