zoukankan      html  css  js  c++  java
  • makefile中重载与取消隐藏规则示例

    学习《跟我一起写Makefile-陈皓》后一直不懂,如何重载或取消隐藏规则

    为了博客版面整洁,何为隐藏规则,Makefile基本规则编写等基础支持请自行百度。

    需要声明的是:这些知识可能在大牛们看来很浅显,百度找到的博客基本都是复制《跟我一起写Makefile-陈皓》的,正因为在此文件上没解释清楚,我这等渣渣一直搞不懂

    ==========================================================================

    重载隐藏规则:显式写出规则,目标+依赖目标与隐藏规则相同,且有命令,则为重载隐藏规则

    eg.有隐藏规则:%.o:%.c

    在makefile中显式地写明:

    %.o:%.c    #目标+依赖与隐藏规则同

             echo "test"   #且有命令


    取消隐藏规则:显式写出规则,且无命令,利用显式规则会取缔隐藏规则,使得隐藏规则无效

    eg.有隐藏规则:%.o:%.c

    在makefile中显式地写明:

    %.o:%.c    #目标+依赖与隐藏规则同,但后续无命令


    需要注意的是,由于make会尽可能达成目标,因此你取消了某条隐藏规则,但是make从另外一个方向完成了目标

    例如:

    取消隐藏规则:

    %.o:%.c   #后面无命令


    make通过另外的隐藏规则的组合也实现了编译:
    1、%.o:%.c
    2、%:%.o


  • 相关阅读:
    Java微信公众平台开发(一)--接入微信公众平台
    微信开发准备
    微信公众平台开发前言
    Spring------自动化装配Bean(三)
    Spring------自动化装配Bean(二)
    Spring------自动化装配Bean(一)
    单链表的基本操作
    线性表的基本操作
    Apache Hadoop各版本发布的SVN地址
    configuration on ubuntu server
  • 原文地址:https://www.cnblogs.com/gmpy/p/5656544.html
Copyright © 2011-2022 走看看