标签:
前一章体验了一把Linux环境下的C语言编程。
不像Windows下,VS中一键F5看结果,保存个代码万事大吉。
其实,在Linux环境下才能真正体会到,从printf(“hello world”); 到 屏幕上出现这么一行小字,计算机经历了多少不为人知的辛酸历程。
复习一下,首先,将c代码进行编译,产生.o目标文件,再将一个或者多个目标文件进行链接,生成一个可执行文件。
首先看一下,熟悉基本概念:
http://www.linuxidc.com/Linux/2014-08/105304.htm
网上看了许多关于makefile的教程,刚开始似懂非懂,直到找到了这篇某大神写的博客,醍醐灌顶。
makefile学习(一):
基本概念,建议先看(二),回头再看(一)更有收获
http://blog.csdn.net/xgsilence/article/details/23593483
makefile学习(二):
对于依赖关系的检索说的很清晰,我是看了他的文章才理解什么是嵌套式检索:
http://blog.csdn.net/xgsilence/article/details/26951361
还发现了比上一篇转载 更好的基本操作汇总:
http://blog.csdn.net/xgsilence/article/details/18733267
这篇有一些对宏的解释,看了些代码,感觉很常用的样子,可以学一学:
http://www.cnblogs.com/vamei/archive/2013/04/29/3051062.html
看了以上教程,差不多也明白makefile是个什么作用了:
makefile是教练,所有的球员都是c代码,球员上场以前都要先热身,所以c代码都要先编译一下,然后教练告诉你怎么配合怎么打。
接下来,不想看链接的可以看我哔哔几句:
上一章中我们写了“加减乘除”四个函数,并且把声明放进了math.h头文件中,在main.c中我们包含了头文件,并且调用了这四个函数。
这里我们简化一下:
A.c
B.c
head.h
main.c
现在有 A.c B.c head.h main.c 这四个文件
接下来就要写makefile文件,把这四个文件联系在一起
键入 vi makefile
录入如下程序:
保存后退出,键入make
过程大概是这样:
计算机收到要make一个hello执行文件的指令,于是去找make它要哪些原料,首先我们需要一个main.o,一看自己兜里没有,于是就去找,找到了“main.o:"这个DIY说明书,一看要做main.o首先要有main.c,一看兜里有一个main.c,编译一下~于是输出第一句话:
这样main.o就做好了,看看菜谱,下一个原料是A.o,操作是把A.c腌制(编译)一下,于是一通操作:
数数看main.o A.o B.o 原料就位!下锅!
热气腾腾的hello就做出来了!
执行一下
完美!!
看看我们的目录下都生成了写啥?
键入ls
酒足饭饱,打扫卫生!
键入 make clean
回归到了原来的样子。
这时我们打开
makefile学习(一):
http://blog.csdn.net/xgsilence/article/details/23593483
再看看基本概念。
一图流。
相信走过这个流程之后,应该对最最基础的Linux操作有了一定的了解。
PS: 吐槽一下插图功能。。。之前做的很多图由于直接复制粘贴都黑喂狗了。
标签:
原文地址:http://blog.csdn.net/wly95/article/details/51330324