make命令的自动推导

网友投稿 654 2022-10-09

make命令的自动推导

make命令的自动推导

GNU 的 make 可以自动推导文件以及文件依赖关系后面的命令。因此,我们就没必要在 每个 .o 文件后都写上类似的命令, make命令会自动识别,并进行推导命令。

当make命令看到一个 .o 文件,它就会自动把 .c 文件加在依赖关系中,例如make找到main.o,就可以推导出main.c就是main.o的依赖文件,并且推导出要执行的命令gcc -c main.c。所以,我们的makefile文件可以表达得更简单些。旧的(不用推导):

OBJECTS = main.o hello.oapp:$(OBJECTS) gcc -o app $(OBJECTS) main.o:main.c hello.h gcc -c\ main.chello.o:hello.c hello.h gcc -c hello.cclean: rm app $(OBJECTS)

新的(需要推导):

OBJECTS = main.o hello.oapp:$(OBJECTS) gcc -o app $(OBJECTS) main.o:hello.hhello.o:hello.hclean: rm app $(OBJECTS)

对新的makefile文件执行一下make命令:

~/Desktop/mydir$ makecc -c -o main.o main.ccc -c -o hello.o hello.cgcc -o app main.o hello.o ~/Desktop/mydir$ lsapp hello hello.c hello.h hello.o main.c main.o makefile~/Desktop/mydir$ ./appHello world88!

谢谢阅读!

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:微信小程序拼图验证 demo,旨在解微信小程序,滑动卡顿问题(微信小程序拼图验证怎么弄)
下一篇:Mybatis的update更新批量与普通解决方式对比
相关文章

 发表评论

暂时没有评论,来抢沙发吧~