makefile实践笔记

形式

target ...:prerequisites ...
	command
	...
	...

之后无依赖

如果冒号后什么没有,那么make就不会自动去找它的依赖性,也就不会自动执行其后所定义的命令。 要执行其后的命令,就要在make命令后明显得指出这个label的名字。这样的方法非常有用,我们可以在一个makefile中定义不用的编译或是和编译无关的命令,比如程序的打包,程序的备份,等等

clean

    .PHONY : clean
    clean :
        -rm edit $(objects)

- 使用减号的目的是:当某些文件出现问题时,不退出,忽略继续执行后面的命令。

-file参数

指定makefile文件:make -file makelinux

include <…/dir/makefile>

include前面可以有空格,但是不能有Tab健( [Tab]字符告诉make此行是一个命令行。 )
  如果文件都没有指定绝对路径或是相对路径的话,make会在当前目录下首先寻找,如果当前目录下没有找到,那么,make还会在下面的几个目录下找:

  • 如果make执行时,有-I—include-dir参数,那么make就会在这个参数所指定的目录下去寻找。
  • 如果目录 <prefix>/include(一般是:/usr/local/bin/usr/include )存在的话,make也会去找。

Makefile的退出

  • 如果出现错误,比如被依赖的文件找不到,那么make就会直接退出,并报错。
  • 而对于所定义的命令的错误,或是编译不成功,make根本不理。
    make只管文件的依赖性,即如果冒号后面的依赖文件不存在,那么Makefile退出。

生成多个执行文件

all:prog1 prog2 prog3
.PHONY all
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值