摘要:
使用make更新函数库文件——————————— 函数库文件也就是对Object文件(程序编译的中间文件)的打包文件。在Unix下,一般是由命令"ar"来完成打包工作。 一、函数库文件的成员 一个函数库文件由多个文件组成。你可以以如下格式指定函数库文件及其组成: archive(member) 这个 阅读全文
posted @ 2017-03-31 17:35
立体风
阅读(227)
评论(0)
推荐(0)
摘要:
五、定义模式规则 你可以使用模式规则来定义一个隐含规则。一个模式规则就好像一个一般的规则,只是在规则中,目标的定义需要有"%"字符。"%"的意思是表示一个或多个任意字符。在依赖目标中同样可以使用"%",只是依赖目标中的"%"的取值,取决于其目标。 有一点需要注意的是,"%"的展开发生在变量和函数的展 阅读全文
posted @ 2017-03-31 17:32
立体风
阅读(122)
评论(0)
推荐(0)
摘要:
隐含规则———— 在我们使用Makefile时,有一些我们会经常使用,而且使用频率非常高的东西,比如,我们编译C/C++的源程序为中间目标文件(Unix下是[.o]文件,Windows下是[.obj]文件)。本章讲述的就是一些在Makefile中的“隐含的”,早先约定了的,不需要我们再写出来的规则。 阅读全文
posted @ 2017-03-31 17:31
立体风
阅读(135)
评论(0)
推荐(0)
摘要:
make 的运行—————— 一般来说,最简单的就是直接在命令行下输入make命令,make命令会找当前目录的makefile来执行,一切都是自动的。但也有时你也许只想让make重编译某些文件,而不是整个工程,而又有的时候你有几套编译规则,你想在不同的时候使用不同的编译规则,等等。本章节就是讲述如何 阅读全文
posted @ 2017-03-31 17:30
立体风
阅读(153)
评论(0)
推荐(0)
摘要:
四、foreach 函数 foreach函数和别的函数非常的不一样。因为这个函数是用来做循环用的,Makefile中的foreach函数几乎是仿照于Unix标准Shell(/bin/sh)中的for语句,或是C-Shell(/bin/csh)中的foreach语句而构建的。它的语法是: $(fore 阅读全文
posted @ 2017-03-31 17:26
立体风
阅读(154)
评论(0)
推荐(0)
摘要:
使用函数———— 在Makefile中可以使用函数来处理变量,从而让我们的命令或是规则更为的灵活和具有智能。make所支持的函数也不算很多,不过已经足够我们的操作了。函数调用后,函数的返回值可以当做变量来使用。 一、函数的调用语法 函数调用,很像变量的使用,也是以“$”来标识的,其语法如下: $(< 阅读全文
posted @ 2017-03-31 17:25
立体风
阅读(150)
评论(0)
推荐(0)
摘要:
六、多行变量 还有一种设置变量值的方法是使用define关键字。使用define关键字设置变量的值可以有换行,这有利于定义一系列的命令(前面我们讲过“命令包”的技术就是利用这个关键字)。 define指示符后面跟的是变量的名字,而重起一行定义变量的值,定义是以endef关键字结束。其工作方式和“=” 阅读全文
posted @ 2017-03-31 17:23
立体风
阅读(181)
评论(0)
推荐(0)
摘要:
使用变量———— 在Makefile中的定义的变量,就像是C/C++语言中的宏一样,他代表了一个文本字串,在Makefile中执行的时候其会自动原模原样地展开在所使用的地方。其与C/C++所不同的是,你可以在Makefile中改变其值。在Makefile中,变量可以使用在“目标”,“依赖目标”,“命 阅读全文
posted @ 2017-03-31 17:22
立体风
阅读(169)
评论(0)
推荐(0)
摘要:
六、多目标 Makefile的规则中的目标可以不止一个,其支持多目标,有可能我们的多个目标同时依赖于一个文件,并且其生成的命令大体类似。于是我们就能把其合并起来。当然,多个目标的生成规则的执行命令是同一个,这可能会可我们带来麻烦,不过好在我们的可以使用一个自动化变量“$@”(关于自动化变量,将在后面 阅读全文
posted @ 2017-03-31 17:21
立体风
阅读(118)
评论(0)
推荐(0)
摘要:
书写命令———— 每条规则中的命令和操作系统Shell的命令行是一致的。make会一按顺序一条一条的执行命令,每条命令的开头必须以[Tab]键开头,除非,命令是紧跟在依赖规则后面的分号后的。在命令行之间中的空格或是空行会被忽略,但是如果该空格或空行是以Tab键开头的,那么make会认为其是一个空命令 阅读全文
posted @ 2017-03-31 17:21
立体风
阅读(163)
评论(0)
推荐(0)
摘要:
书写规则———— 规则包含两个部分,一个是依赖关系,一个是生成目标的方法。 在Makefile中,规则的顺序是很重要的,因为,Makefile中只应该有一个最终目标,其它的目标都是被这个目标所连带出来的,所以一定要让make知道你的最终目标是什么。一般来说,定义在Makefile中的目标可能会有很多 阅读全文
posted @ 2017-03-31 17:20
立体风
阅读(133)
评论(0)
推荐(0)
摘要:
Makefile 总述——————— 一、Makefile里有什么? Makefile里主要包含了五个东西:显式规则、隐晦规则、变量定义、文件指示和注释。 1、显式规则。显式规则说明了,如何生成一个或多的的目标文件。这是由Makefile的书写者明显指出,要生成的文件,文件的依赖文件,生成的命令。 阅读全文
posted @ 2017-03-31 17:19
立体风
阅读(155)
评论(0)
推荐(0)
摘要:
三、make是如何工作的 在默认的方式下,也就是我们只输入make命令。那么, 1、make会在当前目录下找名字叫“Makefile”或“makefile”的文件。 2、如果找到,它会找文件中的第一个目标文件(target),在上面的例子中,他会找到“edit”这个文件,并把这个文件作为最终的目标文 阅读全文
posted @ 2017-03-31 17:18
立体风
阅读(139)
评论(0)
推荐(0)
摘要:
跟我一起写 Makefile 陈皓 概述—— 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想 阅读全文
posted @ 2017-03-31 17:17
立体风
阅读(208)
评论(0)
推荐(0)
摘要:
书写命令———— 每条规则中的命令和操作系统Shell的命令行是一致的。make会一按顺序一条一条的执行命令,每条命令的开头必须以[Tab]键开头,除非,命令是紧跟在依赖规则后面的分号后的。在命令行之间中的空格或是空行会被忽略,但是如果该空格或空行是以Tab键开头的,那么make会认为其是一个空命令 阅读全文
posted @ 2017-03-31 17:14
立体风
阅读(165)
评论(0)
推荐(0)
摘要:
Makefile 总述 Makefile 总述——————— 一、Makefile里有什么? Makefile里主要包含了五个东西:显式规则、隐晦规则、变量定义、文件指示和注释。 1、显式规则。显式规则说明了,如何生成一个或多的的目标文件。这是由Makefile的书写者明显指出,要生成的文件,文件的 阅读全文
posted @ 2017-03-31 17:11
立体风
阅读(456)
评论(0)
推荐(0)
摘要:
为什么用makefile make是我最喜欢的Unix工具之一,通过makefile,它可以做许多自动化的事 情。我用make管理我的Linux配置文件,管理我的笔记,当然,也用它管理 我的编程项目。 最近需要写java程序,由于我想在Emacs而不是Eclipse里做开发,就需要一 个管理项目的工 阅读全文
posted @ 2017-03-31 17:04
立体风
阅读(450)
评论(0)
推荐(0)
摘要:
使用cat命令加输出符>来在bash脚本里面输出多行文本是最直观的做法。 cat >out.file <<EOF start a line ... ... a line again EOF 注意,EOF作为标识符来标记文本的开始和结束,可以为任意字符,但不得和文本内容重复。 还可以写成: cat < 阅读全文
posted @ 2017-03-31 11:47
立体风
阅读(870)
评论(0)
推荐(0)

浙公网安备 33010602011771号