• Makefile编写记录


    近期学习 Linux 需要使用 Makefile,网上搜罗了很多这方面的资料,所里在这里做一个整理。

    1、静态模式

    看一个例子:

        objects = foo.o bar.o
    
        all: $(objects)
    
        $(objects): %.o: %.c
                $(CC) -c $(CFLAGS) $< -o $@

    上面的例子中,指明了我们的目标从 $object 中获取,

    “%.o”表明要所有以“.o”结尾的目标,也就是“foo.o bar.o”,也就是变量 $object 集合的模式,

    而依赖模式“%.c”则取模式“%.o”的“%”,也就是“foo bar”,并为其加下“.c”的后缀,于是,我们的依赖目标就是“foo.c bar.c”。

    而命令的“$<”和“$@”则是自动化变量,“$<”表示所有的依赖目标集(也就是“foo.c bar.c”),“$@”表示目标集(也就是“foo.o bar.o”)。

    于是,上面的规则展开后等价于下面的规则:

        foo.o : foo.c
                $(CC) -c $(CFLAGS) foo.c -o foo.o
        bar.o : bar.c
                $(CC) -c $(CFLAGS) bar.c -o bar.o
  • 相关阅读:
    ios tableviewcontroller
    jsp第十次作业
    jsp第九次作业
    jsp第八次作业
    jsp第七次作业
    jsp第六次作业
    jsp第五次作业
    jsp第四周作业-2
    jsp第四周作业-1
    软件测试第四周作业
  • 原文地址:https://www.cnblogs.com/imapla/p/4220367.html
Copyright © 2020-2023  润新知