下载此文档

makefile文件编写.ppt


文档分类:IT计算机 | 页数:约23页 举报非法文档有奖
1/23
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/23 下载此文档
文档列表 文档介绍
嵌入式系统
Makefile文件编写
一、实验目的
1、读懂makefile文件,能根据makefile文件理清程序结构
2、能编写简单makefile
二、实验原理
1、makefile
2、make工具
Makefile
Makefile主要包含了五部分:
显式规则
隐含规则
变量
文件指示
注释
显式规则
由Makefile的书写者明显指出,要生成的文件,文件的依赖文件,执行的命令
target ... : prerequisites ...             command ...
target:要生成的目标文件
prerequisites:mand:make所要执行的命令(任意的shell命令)
隐含规则
make内部自定义的一些规则。当一个target没有显式的定义生成规则,make寻找一条隐含规则生成该target
例:
foo : bar. -o foo $(CFLAGS) $(LDFLAGS)
,,
变量
变量是在makefile中定义的名字,用来代替一个文本字符串,该文本字符串称为该变量的值
变量的定义
变量名= 值
递归调用扩展型变量
eg:foo = $(bar)
bar=os
变量名:= 值
简单扩展型变量
eg:bar:=os
foo = $(bar)
引用变量时需在前面加上$
变量
变量是在makefile中定义的名字,用来代替一个文本字符串,该文本字符串称为该变量的值
变量的定义
变量名= 值
递归调用扩展型变量
eg:foo = $(bar)
bar=os
变量名:= 值
简单扩展型变量
eg:bar:=os
foo = $(bar)
引用变量时需在前面加上$
缺点:
。如在:
CFLAGS = $(CFLAGS) -O 在变量扩展过程中可能导致无穷循环
,变量一旦展开函数就会立即执行
GNU make的主要预定义变量
$*:去除目标文件扩展名的文件名。,则$*为foo
$+:所有的依赖文件,可能包含重复的文件
$<:第一个依赖文件的名字
$?:修改日期比目标文件的创建日期要晚的依赖文件
$@:目标文件的完整名称
$^:所有的依赖文件,不包含重复的文件
$%:如果目标文件是归档文件,则其表示归档文件的成员名
GNU make的主要预定义变量(续)
AR:归档维护程序的名称,默认值为ar
ARFLAGS:归档维护程序的选项
AS:汇编程序的名称,默认值为as
ASFLAGS::C编译器的名称,
CFLAGS:C编译器的选项
CPP:C预编译器的名称,默认值为$(CC)-E
CPPFLAGS:C预编译器的选项
CXX:C++编译器的名称,默认值为g++
CXXFLAGS:C++编译器的选项
FC:FORTRAN编译器的名称,默认值为f77
FFLAGS:FORTRAN编译器的选项

makefile文件编写 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数23
  • 收藏数0 收藏
  • 顶次数0
  • 上传人endfrs
  • 文件大小0 KB
  • 时间2015-12-10
最近更新