make/Makefile
1. 背景
- 会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力
- 一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的 规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂 的功能操
- makefile带来的好处就是——“自动化编译”,一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率。
- make是一个命令工具,是一个解释makefile中指令的命令工具,一般来说,大多数的IDE都有这个命令,比如:Delphi的make,Visual
C++的nmake,Linux下GNU的make。可见,makefile都成为了一种在工程方面的编译方法。- make是一条命令,makefile是一个文件,两个搭配使用,完成项目自动化构建。
在VS当中,项目管理(多文件管理),VS帮我们自动管理
在Linux当中,维护项目文件关系的工作,需要让make/Makefile来完成
1.1 如何编写Makefile
这里打算编写一个计算器中加的功能键作为简单的代码剖析解释:
①应该将相应的文件创建出来

②编写Makefile文件


上图是最开始也是最容易理解的版本。

第二个图和第一个图的不同就在于gcc -c main.c 这个地方的后面,其实这里编译的时候后面可以省略,因为他会自动的生成同名的.o文件


在这个写法下,那么就不会再出现文件的原始名字,而是全部使用变量替换掉了。
注意:命令前必须是一个“TAB键”,否则编译错误为: missing separator. Stop.

本文介绍了Makefile在Linux项目管理中的重要性,讲解了如何编写Makefile,包括依赖关系、依赖方法和项目清理。同时,通过一个简单的Linux进度条小程序,阐述了回车换行、行缓冲区和强制刷新的概念,详细解析了代码实现过程。通过学习,读者能够掌握自动化编译的技巧和控制台交互式程序的开发。
最低0.47元/天 解锁文章
734

被折叠的 条评论
为什么被折叠?



