项目Makefile文件模板
整理出来的一个Makefile模板,新增了一个内容,调用gcc生成依赖文件,这样如果某个c文件包含的头文件被更新了,该c文件以及依赖于该c文件的obj文件都会被重新编译.
这个模板是按照我习惯的项目文件组织形式进行定义的,我的习惯是头文件放在include文件夹,代码放在src文件夹,目标文件放在obj文件夹,生成的静态库放在lib文件夹,而可执行程序放在bin目录,现在新增的依赖关系文件则放在deps文件夹.
这里是使用该Makefile模板的一个项目实例.
其中main.c和hello.c都包含了头文件hello.h,而test,h只有hello.c才包含,因此在test.h被更新的时候只有hello.o会被重新编译.可以自行进行测试(如使用touch命令更新文件的时间).
这个模板的缺点也是明显的,比如不支持把源代码放在多个文件夹编译等等.不过定制makefile模板我就没有想过做个大而全的东西来,至少目前没有,只要能够满足我的需求就行了:)
转自:http://www.cppblog.com/converse/archive/2009/02/23/74716.html
项目Makefile文件模板相关推荐
- makefile 文件模板
.SUFFIXES:.c .o //.c和.o建立关联 CC=gcc SRCS=hello.c\ add.c //同时编译两个.c文件 OBJS=$(SRCS:.c=.o)//ORJS=hello.o ...
- Makefile文件的编写
文章目录 前言 第一个最简单的 Makefile 文件举例 第二个Makefile示例 第三个Makefile示例 第四个Makefile示例 第五个Makefile示例 总结 前言 Makefile ...
- Makefile文件应用——huge项目
提高复用性 在build目录下,保存公用部分make.rule (1)绝对路径 用ROOT变量保存项目根目录 (2)增加控制变量 EXE/LIB/ (3)头文件查找目录 gcc 的-I(i的大写)选项 ...
- makefile指定头文件路径_玩转Makefile | 企业项目Makefile实例
我是良许,世界500强外企 Linux 工程师,专业生产 Linux 干货,欢迎关注我的知乎「良许Linux」,欢迎点赞,收藏! 1. 前言 本教程展示了一个比较完整的企业项目级别的Makefile文 ...
- 根据文件模板实现预览、生成word、pdf、excel(后端-项目)
背景 页面上有一份表单,包含基本信息和列表信息,用户填写完信息后,点击预览/导出,可以预览/导出word.pdf.excel文档. 因为代码重构过,所以看流程可能会有点绕,为方便能看懂,这里直接提供了 ...
- Linux系统中编译大型C语言项目必备技能之:Makefile文件的编写
文章目录 Makefile的介绍 Makefile的编写规范--简单举例 Makefile的编写规范--复杂举例 项目描述 编译需求 编译思路 Makefile的介绍 我们在阅读一些大型的C语言项目时 ...
- java项目README.MD文件模板
java项目README.MD文件模板 项目简介: 用一两句话简单描述该项目所实现的业务功能: 技术选型: 后端技术栈 springboot mybaits jwt 数据库 关系型数据库 mysql ...
- 构建makefile文件
makefile文件入门 makefile文件的组成内容 makefile 文件主要有一下5种组成部分 显示规则:显示规则说明了生成一个或多个目标文件的发改发和步骤. 隐式规则:由于make工具有自动 ...
- VCS makefile文件
SYNOPSYS VCS Makefile文件编写与研究 这个Makefile是synopsys提供的模板,看上去非常好用,你只要按部就班提供实际项目的参数就可以了.我们来看这个文件的头部说明: m ...
最新文章
- cortex-M3与ARM7的比较
- 应用篇——SSL/TLS
- 史上最简单的 SpringCloud 教程 | 第十四篇: 服务注册(consul)
- 线程wait()和sleep()的区别
- Android wifi carlife,carlife可以无线连接吗?carlife蓝牙连接流程
- 基于MATLAB的数字基带通信系统仿真
- ubuntu dock栏添加应用启动图标
- crio电压采集 labview_基于cRIO远程数据采集终端
- 我们有个共同的名字,XX工
- Oracle VM VirtualBox 使用教程,说实话也就那样吧
- utc时间 单位换算_UTC时间和GMT时间 | 圈里圈外
- 前端效果 -- 实现折叠、展开动画效果
- ECCV 2022|计算机视觉中的长尾分布问题还值得做吗?
- R语言 图片识别文字 PNG JPG图片转文字 OCR tesseract包
- 8个免费在线编程游戏网站,让每个人都可以学习编程
- 计算机锁定不能强制选项无法关机,win7系统1909无法关机只能强制关机重启的解决办法...
- MATLAB编写黄金分割法
- 高校体育场地预约管理系统(Java Web毕业设计)
- 新东方雅思词汇(List 36 ~ List 40)
- google pixel 手机获取root权限
热门文章
- C语言 函数(做个笔记)
- 开源游戏机java模拟器_最棒的 7 款开源终端模拟器
- 华为智慧屏 鸿蒙如何,华为智慧屏V55i配置怎么样 参数介绍运行鸿蒙操作系统
- java thread 无法执行_哪位大神帮我讲一下这段代码,为什么线程不能继续执行
- SVD与PCA的区别
- Ubuntu16.04下安装sogou输入法
- 基于Struts2框架的名片管理系统
- keras 的 example 文件 mnist_siamese.py 解析
- Linux那些事儿 之 戏说USB(6)好戏开始了
- ios xib 四等分_ios Xib的几种用法[转]