简单实用Makefile

makefile的编写规则:

   生成文件:依赖文件

[\t](按tab键)   执行的shell命令

例: #Makefile

               main:main.c

               gcc main.c -o main   

makefile的执行规则:

   当makefile编写完毕,保存退出后,直接敲击make命令,那么make这命令所对应的程序会到当前目录下找到makefile文件,然后按照makefile中记录的编译规则来完成最终项目的编译。因此makefile文件名字只能叫Makefile,Makefile会记录源文件和程序文件的时间信息,如果源文件的最后一次修改时间是在程序文件之后那么就会重新编译程序,否则将报告程序是最新的而不需要重新编译。make永远只生成第一个对象,执行完位生成对象所要执行的命令后就退出了,所以不会再生成第二个对象。

   如果makefile有多个要生成的对象,那么就需要在最上边定义一个对象,将要所有生成的对象都作为这个对象的依赖对象 

  例:  #Makefile

           all:exit exec
           exit:exit.c
                 gcc exit.c -o exit
           exec:exec.c
                 gcc exec.c -o exec

  1.  伪对象:

      .PHONY叫声明伪对象,伪对象代表每次都需要重新生成
       make可以指定生成要生成的对象

例:#makefile

                 .PHONY:exit

                 exit:exit.c         makefile中得预定义变量

  •     在makefile中$符号用于使用一个变量

        a=1
        b=$a

  例      #makefile   

            a = exit exec

           all:$(a)
           exit:exit.c
           gcc exit.c -o exit
           exec:exec.c
                 gcc exec.c -o exec

  •  
  •         $@ 冒号左边要生成的对象
  •         $^ 冒号右边所有的依赖对象
  •         $< 冒号右边依赖对象中得第一个

   例   #makefile

          main:main.c

                 gcc  $^ -o $@

 

 

   

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值