zoukankan      html  css  js  c++  java
  • makefile

    1. makefile 文件描述了整个工程的编译,链接等规则。
     
    规则:用于说明如何生成一个或多个目标文件,规则格式如下:
    targets: prerequisites
           command
    目标 : 依赖
           命令 (命令需要以[TAB]键开始)
    例:
    main.o: main.c
     gcc -c main.c
     
    2. 目标:
    Makefile 中只应该有一个最终目标,其他目标都是被这个目标所带出来的
    一般,第一条规则中的目标将被认为是最终目标。
     
    3. 文件名:
    make 命令默认在当前目录下寻找名字为makefile或Makefile的文件。
    或使用:
    make -f 指定文件名。
     
    4. 伪目标:
     
    Makefile中把那些没有任何依赖的只有执行动作的目标称为“伪目
    标”(phony targets).
     
    如:
    .PHONY: clean   ( .PHONY 将 clean 目标声明为伪目标)
    clean:
     rm -f hello main.o
     
    5. 变量:
    obj=main.o func1.o func2.o
    hello:$(obj)
     gcc $(obj) -o hello
     
    在makefile中,存在系统默认的自动化变量
    $^ --- 代表所有的依赖文件
    $@ --- 代表目标
    $< --- 代表第一个依赖文件
     
    例:
    hello: main.o func1.o func2.o
     gcc main.o func1.o func2.o
    ==>
    hello: main.o func1.o func2.o
     gcc $^ -o $@
     
    6. 杂项:
    a. Makefile 中 “#” 字符后的内容被视为注释。
    b. @ --- 取消回显,不会显示命令信息。
    如:
    hello: hello.c
     @gcc hello.c -o hello

  • 相关阅读:
    电商零售数仓建模之平台01:平台业务模型
    js自动补零
    Git
    C# HttpClient 请求认证、数据传输笔记
    悲/乐观并发控制的区别
    Win10安装node.js始终出现2503错误解决方法
    行首和行尾快捷键
    IP地址分类和私有地址
    source面板看不到js的调试方法
    js常用类型判断
  • 原文地址:https://www.cnblogs.com/hehehaha/p/6333009.html
Copyright © 2011-2022 走看看