Contiki 2.7 Makefile 文件(一)】的更多相关文章

5.第五部分 ifndef CONTIKI $(error CONTIKI not defined! You must specify where CONTIKI resides!) endif ifeq ($(HOST_OS),Darwin) AROPTS = rc endif ifeq ($(UIP_CONF_IPV6),1) CFLAGS += -DWITH_UIP6=1 endif CONTIKI_TARGET_DIRS = . dev ctk CONTIKI_TARGET_MAIN =…
4.第四部分 (1) oname = ${patsubst %.c,%.o,${patsubst %.S,%.o,$(1)}} 自定义函数,$(1)表示调用oname这个函数的第一个参数,patsubst是make内置函数,即模式字符串替换函数. oname函数实现的功能是: 将第一个参数中符合%.s模式的替换成%.o 再继续将上述结果中符合%.c模式的替换成%.o 也就是把所有 .s 和 .c文件名替换成 .o文件名. 这个函数的功能就是计算源文件名(c源文件,汇编源文件)所相对应的目标文件名…
3.第三部分 这里我们假设TARGET为native (1) OBJECTDIR = obj_$(TARGET) LOWERCASE = -abcdefghijklmnopqrstuvwxyz UPPERCASE = _ABCDEFGHIJKLMNOPQRSTUVWXYZ TARGET_UPPERCASE := ${strip ${shell echo $(TARGET) | sed y!$(LOWERCASE)!$(UPPERCASE)!}} CFLAGS += -DCONTIKI=1 -DC…
2.第二部分 这里的usage,targets,savetarget,savedefines都是伪目标. 和all不同,这些伪目标不会被执行,除非显式指定这些目标. 这里有两个目标savetarget,savedefines前边我们提过. 通过命令 make TARGET=esb savetarget可以保存默认的TARGET到Makefile.target中. 通过命令 make TARGET=esb DEFINES=MYTRACE,MYVALUE=4711 savedefines 可以保存默…
二.Makefile.include 1.第一部分 (1) ifndef CONTIKI ${error CONTIKI not defined! You must specify where Contiki resides} endif 含义: 如果没有定义CONTIKI变量,make停止运行. 并产生一个致命的错误信息,CONTIKI not  defined! You must specify where Contiki resides. hello-world这个例子在主控Makefil…
一.主控Makefile 这里以hello-world例子为主线,从其工程Makefile开始,解析整个build过程.…
1.1在这之前,我们需要了解程序的编译过程 a.预处理:检查语法错误,展开宏,包含头文件等 b.编译:*.c-->*.S c.汇编:*.S-->*.o d.链接:.o +库文件=*.exe 1.2体验在VC下程序的编译 a.先编译,在链接 b.修改了哪个文件,就单独编译此文件,在链接 c.修改了哪个头文件,就单独编译使用该头文件的源文件,在链接 1.3在linux下实现上述要求 2.编写一个测试的Makefile 2.1直接编译链接 gcc -o test a.c b.c 缺点:改变其中一个文…
1. make工具 利用make工具可以自动完成编译工作,这些工作包括: 如果修改了某几个源文件,则只重新编译这几个源文件 如果某个头文件被修改了,则重新编译所有包含该头文件的源文件 利用这种自动编译可以大大简化开发工作,避免不必要的重新编译.make工具通过一个称为Makefile的文件来完成并自动维护编译工作,Makefile文件描述了整个工程的编译.连接规则. 2. Makefile文件 Makefile描述了整个工程的编译连接规则.Makefile的基本规则为: TARGET...: D…
Makefile文件相当于是一种脚本编程语言,目的是实现自动化编译.编写makefile文件的过程中可以使用变量.控制结构和函数等一般编程语言的特性. Makefile文件的组成内容.makefile文件的书写,makefile文件使用实例. Makefile文件包含:makefile文件一般命名为makefile或者Makefile,make工具能直接识别执行.如果指定makefile文件的话可以用命令$make –f <文件名>来执行,makefile文件中也可以用include关键字包含…
一.相关概念的介绍 什么是 Makefile?怎么书写 Makefile?竟然有工具可以自动生成 Makefile?怎么生成啊?开始的时候,我有这么多疑问,所以,必须得先把基本的概念搞个清楚. 1.Makefile makefile用来定义整个工程的编译规则.一个工程中的源文件计数,其按类型.功能.模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile就像一个Shell脚…