首页 > 其他 > 详细

makefile进阶使用1

时间:2019-10-24 17:50:49      阅读:91      评论:0      收藏:0      [点我收藏+]

wildcard

扩展通配符;

src = $(wildcard *.c)
//将当前目录下的所有以*.c格式命名的文件构成一个文件名列表变量src;
src = $(wildcar *.c *.cpp src/*.cpp)
//也可指定多个目录下特殊命名格式的文件列表变量;
//获取当前目录下以.c和.cpp命名的文件名以及src目录下以.cpp命名文件名列表变量src;
$(patsubst %.c,%.o,$(wildcard *.c))
//将当前目录下的所有*.c文件列表变量,替换为.o文件列表变量;
//适用于编译指定目录下的多个源文件;

patsubst

替换通配符;

objects := $(patsubst %.c,%.o,$(wildcard *.c))//将当前目录下的.c源文件列表替换为同名的目标文件列表,构建了目标文件;
foo : $(objects)
        cc -o foo $(objects)
//以上是将c文件编译为的目标文件.o链接为foo可执行程序;

可实现将不同目录下的源码同时编译并链接为一个可执行程序;

 

makefile进阶使用1

原文:https://www.cnblogs.com/lukybee/p/11733624.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!