contiki2.6之Makefile详细解读一

本文详细解读开源操作系统Contiki 2.6的Makefile,包括makefile.include和工程目录中的Makefile,解释了如何配置和编译Contiki项目。重点介绍了CONTIKI_PROJECT、TARGET、HOST_OS等关键变量的作用,以及makefile中各种条件判断和目标的用法。
摘要由CSDN通过智能技术生成

     下载contiki2.6源码:

      http://download.csdn.net/detail/crystal736/5149740

     打开makefile.include文件,这个是在contiki系统根目录中,而非工程目录,在contiki源码中有很多工程,在example目录里面,每一个目录对应一个工程,比如cc2530dk目录中就对应的是cc2530平台的工程,记住有makefile文件的当前目录才是工程目录,所以makefile.include的当前目录就不是工程目录。

  本文将从makefile.include开始解读,一步一步深入包含contiki操作系统的工程的编译过程(以cc2530dk为例)。其中会涉及到makefile和shell相关知识,我会一一解释清楚。

  先打开example/cc2530dk/makfile文件

CONTIKI_PROJECT = hello-world blink-hello timer-test sensors-demo

all: $(CONTIKI_PROJECT)

CONTIKI = ../..
include $(CONTIKI)/Makefile.include

    CONTILI_PROJECT变量定义的是最后生成的目标文件,即可执行文件,这里生成了四个可执行文件,为什么要这么做呢?因为通常来讲makefile只能生成一个终极目标,这里用到了all伪目标(没有命令行的规则,或者没有规则的命令),即all依赖于以上四个可执行的文件。如果不这样做的话,即没有用all伪目标,则最终只能生成一个可执行文件hello-world 或 blin-hello

   第三句定义变量CONTIKI 为上级目录的上级目录,即为contiki的根目录,因为要用下面一句

include $(CONTIKI)/Makefile.include  包含根目录里面的makefile.include ,此时make就会停止读取当前的Makefile,转而去读Makefile.include

   用souceinsight打开Makefile.include,内容较多,我们逐步来解析。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值