一个简单的Makefile例子

本文通过一个简单的Makefile例子讲解其书写规则和执行流程,以tinyhttpd项目为例,介绍如何编译http服务器,并探讨了Makefile中的执行顺序和验证方法。

1.欢迎来到我的酒馆

    从头讲一门工具总是显得很难,先借助一个小项目来学习Makefile。tinyhttpd,代码仅有502行,用来学习http server非常不错。通过它,你可以了解到http服务器的本质。https://sourceforge.net/projects/tinyhttpd/ 解压出来
这里写图片描述

2.Makefile的书写规则

    make+file,Makefile是一种配置文件,由make程序执行。它详细说明了编译当前项目的细节和管理非源代码文件(.o文件,可执行文件等)。Makefile可以看成是加强版的shell脚本。shell里面能用的命令,在Makefile里也可以用。Makefile书写规则:

在这里插入图片描述

1.target+dependencis … \n[Tab]gcc commands1 … 称为一个执行单元。
2.编译命令前,一定要摁下一个TAB键缩进(GNU Make下)。别敲空格,没用的。。。
3.生成一个target需要一个或多个"配方(dependencis)",配方可以是源文件,或者是别的target。
 所有的配方都集齐了,就可以"开工(gcc commands)"生成target。

  看tinyhttpd的Makefile是怎么写的,简单明了。把’-lsocket’删了,因为这个程序有

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值