Chinaunix首页 | 论坛 | 博客
  • 博客访问: 297875
  • 博文数量: 71
  • 博客积分: 4010
  • 博客等级: 上校
  • 技术积分: 672
  • 用 户 组: 普通用户
  • 注册时间: 2007-04-05 18:50
个人简介

为了生活努力奋斗

文章分类

全部博文(71)

文章存档

2013年(2)

2010年(1)

2009年(9)

2008年(2)

2007年(57)

我的朋友

分类: LINUX

2007-04-06 21:16:37

makefile文件为make程序的输入文件。
 
makefile文件的基本规则:
  一、其形式为:
目标(target)...... :先决条件(prerequisites)...                  命令(command)
    目标通常为生成的目标文件名或活动名称。
  
注:先决条件通过目录搜寻。如果在其它目录被找到命令仍然会被执行。
 二、 为避免这种错误,可以使用自动变量:
                 

1、"$^":表示规则的所有条件,包括目录名。

2、"$<":表示第一个先决条件。

3、"$@":表示目标对象。

   例: 

foo.o : foo.c defs.h hack.h

        cc -c $(CFLAGS) $< -o $@

其中:$<会替换成foo.c $@替换成foo.o

     $(CFLAGS)为对CFLAGS标识符的引用,需加上$()。

 三、隐式规则:

后缀规则(老式的隐式规则):例:

.c.s:

     $(CC) $(CFLAGS)\

     -nostdine -Iinclude -s -o $*.s $<

其中.c.s 即为*.c源文件与*.s目标文件

  $< 即为*.c文件。

  意为将*.c文件全部编译成*.s文件。

 

阅读(704) | 评论(0) | 转发(0) |
0

上一篇:运行LINUX0.11

下一篇:读核方法论(转载)

给主人留下些什么吧!~~