【Linux学习】(7)项目自动化构建工具make/Makefile

Linux项目自动化构建工具-make/Makefile

1. 背景介绍

  1. 会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力
  2. 一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作
  3. makefile带来的好处就是——“自动化编译”,一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率
  4. make是一个命令工具,是一个解释makefile中指令的命令工具,一般来说,大多数的IDE都有这个命令,比如:Delphi的make,Visual C++的nmake,Linux下GNU的make。可见,makefile都成为了一种在工程方面的编译方法
  5. make是一个命令,Makefile是一个当前目录下的一个文件,两个搭配使用,完成项目自动化构建

2. 先见一见Makefile是如何工作的?

  1. 在当前目录下,创建一个Makefile文件(Makefile的首字母大小写均可)在这里插入图片描述
  2. 编写Makefile文件,如下:
mycode:mycode.c # 依赖关系
	gcc mycode.c -o mycode # 依赖方法
clean: # 依赖关系
	rm -f mycode # 依赖方法
  1. 有了Makefile,编译项目我们不用再gcc命令了,可以直接make
  2. make命令会自动帮我们在当期目录下找Makefile,然后根据Makefile内部的依赖关系和依赖方法,执行对应的依赖方法,帮我们生成对应的可执行程序
  3. make之后我们再进行make它就不允许我们make了,这个时候我们需要rm清理可执行程序,但是rm风险太大,我们容易误删文件
  4. 所以我们的Makefile它不仅支持我们编译项目,也支持我们清理项目
  • 示例:在这里插入图片描述
  • 通过示例,我们现在只需要知道make是一个命令,Makefile是一个当前目录下的文件
  • 我们现在有如下三个问题,解决了这三个问题我们就可以大致了解make/Makefile了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值