vivi情景分析(一): 配置管理(七)

上一篇 / 下一篇  2008-06-15 14:09:07 / 个人分类:arm

   上例中我们分析了make config的情景,明白了make config时,配置选项是如何出现的,以及输入配置选项后,配置选项如何输入到配置文件的过程。简而言之,make config的作用就是,根据用户的配置生成了两个重要文件:.config和autoconf.h。那这两个配置文件,在编译链接vivi时,是如何起作用的呢,vivi的image文件又是如何生成的呢,当你走过make的情景后,一切豁然开朗。
   查看Makefile的原则是:根据目标找依赖,每一个依赖又是一个目标,对于依赖无法再分的目标,执行目标下的动作,执行后再返回到上一层。举一个简单的例子:
A:B C
    动作1
B:E F
    动作2
E: G
    动作3
C:H
    动作4

   运行make A,A是目标,B,C是依赖,B依赖E,F;而E又依赖G,G不能再分,因此执行E下面的动作,生成E;F不可再分,直接生成;E,F都生成后,B再无依赖,因此执行B下的动作,生成B;再看C,C依赖H,H不可再分,因此执行C下面的动作,生成C;此时B,C都生成,A再无依赖,执行A下面的动作,生成A。至此Make完毕。
其实这个过程和图论当中的先深搜索有关。每一个目标和依赖都是一个节点,依赖关系则构成父子关系,没有依赖关系的节点就是一个叶子节点,遍历从A开始,从子节点到父节点的回溯就是一次编译过程。
     A
  B     C
E   F   H
G


   vivi也一样,只是它比一般的Makefile要复杂一点,有时大家就望而生畏了,其实只要我们把握了上面的原则,再复杂的景象也会一点一点地展现在我们面前,还等什么,Let's go。

TAG: ARM arm

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

我的栏目

日历

« 2008-11-20  
      1
2345678
9101112131415
16171819202122
23242526272829
30      

数据统计

  • 访问量: 4677
  • 日志数: 43
  • 建立时间: 2008-06-01
  • 更新时间: 2008-07-20

RSS订阅

Open Toolbar