Make
文章平均质量分 83
日晨难再
一个略带强迫症的研究牲,目前某著名福建三本硕士在读,数字集成电路设计方向,会不定期发布文章(摸鱼),感谢大家的支持
展开
-
Make:目标(Target)构建的详细和依赖项的处理过程(个人总结)
如果main.o不存在,main存在,也一定会在最后执行gcc -o main main.o构建,即使你在main.o中创建了main.o和main,并使main新于main.o,因为此时对于main和main.o的比较不会进行,在检查到main.o缺失时,gcc -o main main.o就注定要执行。1、如果某个依赖项文件不存在,则会在当前makefile中搜索是否存在以该依赖项文件为目标的规则进行处理,处理规则相同,且规则的命令一定会在规则的所有依赖项文件被处理后执行,如果没有则会报错。原创 2023-07-21 15:07:31 · 485 阅读 · 7 评论 -
Make:默认构建目标(终极目标)
默认情况下make命令的构建从第一个没有 . 前缀的目标(target)开始(除非有 . 前缀的目标中有一个或更多 / ,这是GNU make官方手册说的)。实际上,放在第一个的./.target目标也不会被构建,所以更准确的概括是,make命令从不是隐藏文件的目标开始。可以使用命令行覆盖makefile的默认终极目标,即将目标名作为参数传递给make命令。当出现多目标的规则时(较少见,一般情况下一个规则就是一个目标),目标列表中的第一个目标是默认终极目标。对应的值可以改变终极目标。原创 2023-07-19 18:39:52 · 1535 阅读 · 2 评论