【编译】makefile使用

90 篇文章 6 订阅

本文重在记录makefile的使用方法,不介绍相关原理。
注意:所有的makefile指令前面都需要两个 Tab 缩进

1.初步使用

创建工作目录,工作目录下创建如下两个文件:
main.c

#include <stdio.h>
int main()
{
    printf("打印\n");
}

makefile 或 Makefile

app : main.o
    cc -o app main.o

main.o : main.c
    cc -c main.c
clean :
    rm app main.o

说明:
app : mian.o
一种依赖关系的声明,生成程序app需要依赖 main.o 文件。
cc -o app main.o
一个终端命令, 执行该命令,gcc使用main.o文件生成app
main.o : main.c
同理,依赖关系声明,生成main.o需要main.c文件
cc -c main.c
使用gcc编译main.c文件,生成二进制文件main.o
clean :
清除命令,不依赖任何文件
rm app main.o
清除编译链接生成的所有文件,类似于xcode的command+shift+k

执行流程

$ make

在工作目录下执行make命令,make命令会按照makefile文件中的规则执行,首先是app:main.o,依赖关系声明生成app需要main.o文件,make命令检查main.o是否存在(是否最新)

  • 如果存在(或最新),则执行表达式 cc -o app mian.c命令,生成app;
  • 如果不存在(或不是最新),则去生成main.o

main.o生成,检查依赖,main.c是否存在(或最新)

  • 如果存在(或最新),则执行表达式 cc -c mian.c命令,生成mian.o;
  • 如果不存在,则报错

以上所有的命令都可以单独执行,如:

$ make main.o
$ make clean

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wangchuang2017

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值