Chinaunix首页 | 论坛 | 博客
  • 博客访问: 442852
  • 博文数量: 120
  • 博客积分: 2284
  • 博客等级: 大尉
  • 技术积分: 1330
  • 用 户 组: 普通用户
  • 注册时间: 2011-01-25 10:49
个人简介

http://guliqun1983.blog.163.com/blog/static/501116852011730535314/

文章分类
文章存档

2013年(23)

2012年(23)

2011年(74)

发布时间:2012-12-18 17:34:02

自动生成依赖性   在Makefile中,我们的依赖关系可能会需要包含一系列的头文件,比如,如果我们的main.c中有一句“#i nclude "defs.h"”,那么我们的依赖关系应该是:     main.o : main.c defs.h 但是,如果是一个比较大型的工程,你必需清楚哪些C文件包含了哪些头文件,并且,你在加入或删除头文件时,也需要小心地修改Makefile,这是一个很没有维护性的工作。为了避免这种繁重而又容易出错的事情,我们可以使用C/C++编译的一个功能。大多数的C/C++编译器......【阅读全文】

阅读(1800) | 评论(0) | 转发(3)

发布时间:2012-12-18 17:32:52

五、定义模式规则   你可以使用模式规则来定义一个隐含规则。一个模式规则就好像一个一般的规则,只是在规则中,目标的定义需要有"%"字符。"%"的意思是表示一个或多个任意字符。在依赖目标中同样可以使用"%",只是依赖目标中的"%"的取值,取决于其目标。 有一点需要注意的是,"%"的展开发生在变量和函数的展开之后,变量和函数的展开发生在make载入Makefile时,而模式规则中的"%"则发生在运行时。 1、模式规则介绍 模式规则中,至少在规则的目标定义中要包含"%",否则,就是一般的规则。目标中的"%"定义表示对文件名的匹配,"%"表示长度任意的非空字符串。例如:"%.c"表示以"......【阅读全文】

阅读(4549) | 评论(0) | 转发(4)

发布时间:2012-12-18 17:31:09

四、foreach 函数   foreach函数和别的函数非常的不一样。因为这个函数是用来做循环用的,Makefile中的foreach函数几乎是仿照于Unix标准Shell(/bin/sh)中的for语句,或是C-Shell(/bin/csh)中的foreach语句而构建的。它的语法是:       $(foreach <var>;,<list>;,<text>;)   这个函数的意思是,把参数<list>;中的单词逐一取出放到参数<var&g......【阅读全文】

阅读(897) | 评论(0) | 转发(2)

发布时间:2012-12-18 17:26:20

在Makefile中可以使用函数来处理变量,从而让我们的命令或是规则更为的灵活和具有智能。make所支持的函数也不算很多,不过已经足够我们的操作了。函数调用后,函数的返回值可以当做变量来使用。 一、函数的调用语法 函数调用,很像变量的使用,也是以“$”来标识的,其语法如下:     $(<function>; <arguments>;) 或是     ${<function>; <arguments>;} 这里,<function>;......【阅读全文】

阅读(1045) | 评论(0) | 转发(3)

发布时间:2012-12-18 17:24:37

函数库文件也就是对Object文件(程序编译的中间文件)的打包文件。在Unix下,一般是由命令"ar"来完成打包工作.   一、函数库文件的成员 一个函数库文件由多个文件组成。你可以以如下格式指定函数库文件及其组成:     archive(member) 这个不是一个命令,而一个目标和依赖的定义。一般来说,这种用法基本上就是为了"ar"命令来服务的。如:     foolib(hack.o) : hack.o       ......【阅读全文】

阅读(401) | 评论(0) | 转发(2)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册