最近工作很忙,但这不是为什么一个多星期没有更新博客的原因。相反,最近一直在写这篇文章。现在终于让它与大家见面了!这是一篇长达60多页的文章(见附件),希望与你渴望学习Makefile的热情相比,不会显得短,而且我相信你不会失望!
    
在两年多前,我曾经给单位的同事做过了Makefile方面的培训,培训是采用“做项目”的形式进行的,通过将项目越做越复杂和真实的方式来学习Makefile。我发现这种形式非常的好,它告诉你的不仅仅是Makefile的知识点,还告诉了你为什么Makefile要写成那样,即,让你知其然也知其所以然。一直以来也想将其写成文章与大家分享,借着这次写《跟我学嵌入式开发》的机会,我如愿地写出了这篇文章。希望你喜欢,也期望这是你所看到的写得最好的关于Makefile的学习文章!
   
在网上你能找到很多关于Makefile的学习资料,但绝大部分给你的只是一个知识点,与将Makefile运用到项目中(尤其是大型项目)的差距非常的大。因为,将Makefile运用到项目中,需要的知识是线、甚至是面。这篇文章以helloworld作为开篇,接着是simple项目、complicated项目以及huge项目,一步一步的引入了Makefile中的概念,以及告诉你做一个实用的编译环境需要注意什么。
   
学习Makefile,很重要的一点是掌握目标和依赖关系的概念,并且,采用依赖关系去思考问题,这一点非常的重要。这如同面向对象的设计,需要我们采用面象对象的思考方式去思考问题一样。此外,这篇文章的实践性非常的强,你需要跟着我的思路去实践,然后思考,最后达到融会贯通。为了方便学习,在附件中你能找到文章中使用到的一些Makefile。

Enjoy!