学习资源: 笨方法学C语言中文版
习题2 使用Makefile构建程序
跟着书上做
1 打开终端,进入demo文件夹,分别输入 make ex1 和 CFLAGS="-Wall" make ex1 命令,如下图:
由于在习题1中已经生成了ex1文件且没有改动源文件,故显示ex1已是最新,使用rm ex1命令删除ex1文件,重新生成即可。
rm 命令会删除文件,后面写要删除的文件名
CFLAGS="-Wall"为修饰符,放在make命令之前,修饰符会在生成时产生一些别的效果,后面还会遇到,到时候会更加明白。
2 打开Ubuntu自带的文本编辑器,先保存,文件命名为Makefile,位置为demo文件夹下,无后缀,如下图:
3 完成上一步保存后,会回到文本编辑器编辑页面,在文件中写入如下图中内容并保存:
注意第4行代码前面空白为一个缩进,请不要使用空格,而是使用tab键
4 在终端进入demo文件夹的情况下,执行下图中的make相关命令:
输出与书上一致。
破坏Makefile
1 将Makefile第4行的缩进删除并保存,再在终端执行make clean命令,输出如下图:
提示没有分隔符并且停止了执行命令,并没有删除ex1文件
2 将Makefile第4行的缩进换成4个空格并保存,再在终端执行make clean,同样会提示缺失分隔符,如下两图:
破坏完成之后,请复原Makefile
附加任务
1 创建 all:ex1目标,放在修饰符后面,所有目标的第一个,并保存,如下图:
这样只需要在终端执行make命令就可以构建ex1了。如下图:
我先删除ex1再直接使用make,而不是make ex1就可以构建ex1了。
Makefile学习
关于Makefile现阶段我需要的东西已经写在下方代码和注释中了,注释采用Makefile语法,用#表示注释