Makefile
通过一些实操来加强对Makfile的认识
名为cainiaocl的搬运工
这个作者很懒,什么都没留下…
展开
-
linux下C语言的编译原理
C语言编译详解 GCC 编译器在编译一个C语言程序时需要经过以下 4 步: 1. 将C语言源程序预处理,生成.i文件。{预编译处理(.c)} a.宏定义指令:将所有的#define删除,并且展开所有的宏定义 b.条件编译指令:处理所有的条件预编译指令,比如#if #ifdef #elif #else #endif等 c.头文件包含指令:处理#include 预编译指令,将被包含的文件插入到该预编译指令的位置 d.特殊符号指令:预编译器可研识别一些特殊的符号,例如:删除所有注释 “//”和”/原创 2020-05-18 23:48:59 · 252 阅读 · 0 评论 -
学习笔记:Makefile的使用(四)
Makefile的语法工具 变量的定义 makefile中的变量,与C语言中的宏类似,它为一个文本字符串(变量的值,其类型只能是字符串类型)提供了一个名字(变量名)。 变量的基本格式: 变量名 赋值符 变量值 变量名指的就是该变量的名字,是不包括“:”、“#”、“=”、前置空白和尾空白的任何字符串。需要注意的是,尽管在GNU make中没有对变量的命名有其它的限制,但定义一个包含除字母、数字和下划线以外的变量的做法也是不可取的,因为除字母、数字和下划线以外的其它字符可能会在以后的make版本原创 2020-05-18 15:08:36 · 224 阅读 · 0 评论 -
学习笔记:Makefile的使用(三)
前两节讲的是Makefile最重要也是最为基本的规则,接下来是堆Makefile更加灵活的应用 注意: 个人觉得makefile我们先学的不用太深,只要懂一些语法单元以及他的灵活用法就行。太过于复杂的,我们可以在编写Makefile实战中学习,不会直接百度,这样效果更好。若是学简单的Makefile的话,一天应该有余。 以下是一般情况下一个完整的makefile所包含的语法模块: complicated项目实例 main.c #include <stdio.h> #include "compl原创 2020-05-17 23:15:28 · 101 阅读 · 0 评论 -
学习笔记:Makefile的使用(二)
Makefile基本概念实例 main.c文件 simple.c文件 malefile文件(来自实验楼) 最后就是要编写我们的makefile了,一般在编写makefile之前都需要先分析清楚整个工程各个模块的依赖关系,及相应的生成命令。我们的project_simple工程最终生产的是一个叫simple的可执行文件,而该可执行文件是使用gcc命令编译main.c和simple.c生成的,因此我们的整个工程的关系依赖图,如下: 编写makefile并且运行颜值验证 常用的几个命令 $ ls -lt原创 2020-05-17 21:51:36 · 155 阅读 · 0 评论 -
学习笔记:Makefile的使用(一)
Makefile是什么? 一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile就像一个Shell脚本一样,也可以执行操作系统的命令 为什么要学Makefile? 1、在大型的项目中,源文件和目录不计数,文件间的依赖关系及其所在路径非常复杂; 2、文件间的编译顺序,哪些需要先编译,哪些需要后编译,哪些需要重新编译,我们不能通过简单的编译命令来原创 2020-05-17 21:26:21 · 289 阅读 · 0 评论