makefile
Posted 进心进利
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了makefile相关的知识,希望对你有一定的参考价值。
为什么需要makefile?
当我们有多个.c 和 .h文件需要同时编译的时候makefile的作用就出现了。makefile可以实现一键编译。
makefile是用来管理工程的。
makefile的基本概念
结构图
目标:依赖
(tab键)命令
目标:目标顶格写,(冒号后面是依赖)
依赖:依赖是用来产生目标的原材料
命令:命令前面一定是tab,不能是空格。命令是生成那个目标所要做的动作
makefile的基本工作原理
其一:当我们执行make xx的时候Makefile会自动执行xx这个目标下面的命令
其二:当我们make xx的时候,是否执行命令是取决于依赖的,只有在依赖成立的时候才会执行
其三:我们直接执行make和我们执行第一个目标的效果是一样的。
举例分析:
a.c文件
#include<stdio.h> int main(void) extern i; { int a=10; printf("a=%d.\n",a); }
a.c文件
int i=5;
第一种:执行gcc a.c b.c -o ab //将编译后生成ab
第二种:利用Makefile文件
exe:a.c b.c gcc a.c b.c -o ab clean: rm exe
写完文件后每次编译只需要执行make,自动执行第一个目标。这是最基础的Makefile
以上是关于makefile的主要内容,如果未能解决你的问题,请参考以下文章
使用带有 NMake 样式 Makefile 的 clang-cl 无法回显