原创
笔记(7)-企业级makefile
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
</div>
<!--一个博主专栏付费入口-->
<!--一个博主专栏付费入口结束-->
<link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-4a3473df85.css">
<div id="content_views" class="markdown_views prism-atom-one-dark">
<!-- flowchart 箭头图标 勿删 -->
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
<path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path>
</svg>
<p>1、根目录Makefile-总控下的Makefule(1、进入各个功能子目录执行make命令 2、将所有.o文件链接生成可执行文件)<br>
2、功能目录Makefile(将src目录的.c文件编程生成.o文件)
3、script的Makefile(定义变量(相当于c语音的头文件))
项目的makefile顺序:
先看sript的makefile,再看总控Makefile,其次看功能目录的Makefile
:= 前面的变量不能通过后面的变量来定义。
+= 实现给变量追加值
?= 防止重复定义
wildcard:找出当前目录下的.c文件
patsubst:.c文件编译成.o文件
foreach:循环
call:取值
</div>
<link href="https://csdnimg.cn/release/phoenix/mdeditor/markdown_views-b6c3c6d139.css" rel="stylesheet">
</div>
</article>
<div class="postTime">
<div class="article-bar-bottom ">
<span class="time">
文章最后发布于: 2019-10-14 12:36:17 </span>
</div>
</div>