文档库 最新最全的文档下载
当前位置:文档库 › American Musicians Make Balinese Gamelan Their Own

American Musicians Make Balinese Gamelan Their Own

American Musicians Make Balinese Gamelan Their Own
American Musicians Make Balinese Gamelan Their Own

thought it was most amazing sounding thing. It

sounded like nothing I'd ever heard before, I guess."

Andy McGraw was studying jazz and classical

percussion on the east coast in college and at home in

Kansas City. He recalls hearing Balinese gamelan

music for the first time in an introductory world music

class, and absolutely hating it.

"It sounded radically out of tune, and disorganized.

And I couldn't make any sense of it. Then, when I first

heard it live, it was in Bali, and it was in a contest

between two of really the best groups on the island in

a temple contest. I couldn't believe it was same music

I heard on this cassette that I detested so much!" McGraw is now a professor of ethnomusicology at the University of Richmond in Virginia, and executive director of Dharma Swara.

Performing for an audience that knows its music

Unlike western classical music competitions, where a panel of experts rates each performance, McGraw explains gamelan competitions in Bali rely mostly on audience reaction. "And the audience lets you know in real time exactly how they feel about your performance. And any slight mistake this audience goes crazy and will hoot and holler.

"It's really more like a soccer crowd"

The month-long Bali Arts Festival is an enormous affair, with multiple stages of music and dance, plus fashion shows, food stalls, and events for children, in addition to the traditional music and dance performances and competitions.

Some of what Dharma Swara will perform is very

traditional. Other selections are new compositions by

members of the group - works that sound very

different from anything the Balinese people will have

heard before.

Vivian Fung thinks that audiences will be surprised -

and pleased - by the fusion of East and West, and old

and new. "What we're doing is infusing our personality

into the gamelan. And some of the composers have

these jazzy licks, and there's one composer that has

very atmospheric avant garde sound. She's using the

gamelan in an entirely different way. And it's very

experimental." Fung sees the competition as a sort of cultural exchange. "[They're thinking,] there are these foreign people that are coming in, playing our music. But I think that we have put our own stamp on

something very traditional and we can add our own personalities to it. And that's the best that we can do.

"We're a group from New York so we have this New York mentality," she points out. "And I think they will love that, actually."

The test will come on July 8th, in the final days of the Festival, when New York's Dharma Swara

faces off against the best local gamelan groups in Bali. Balinese gamelan ensemble Dharma Swara in rehearsal at the Indonesian Consulate in New York

City

Dharma Swara includes dancers as well as musicians

初中关于take make give的用法汇总

take 用法 作为动词,主要有以下几种用法: 一、拿,取 I want to take some books to the classroom. 我想拿些书到教室。 二、吃,喝,服用,放 ①Take this medicine three times a day. 每天吃三次药。 ②Do you take sugar in your milk? 你喝的牛奶里放糖吗? 三、乘车(船)等 ①Shall we go there by bike or take a taxi? 我们是骑自行车去那还是坐出租车去? ②They usually take a bus to work. 他们通常乘公交车上班。 四、常常和it连用,it在句子中作形式主语,真正的主语是后面的不定式。翻译成“花费(时间、金钱)等” ①How long will it take you to do your homework every day? 每天做作业要花费你多长时间? ②It usually takes her 20 yuan to buy books every week. 每周买书通常要花费她20元钱。 五、“做……事情”, 常常和名词连用,表示与该名词意义相关的动作 例如:take a walk散步, take a rest休息一下, take a look看一看等等。 构成常用的重要词组: 1. take away 拿走Tom takes the knife away from the little boy. 汤姆从小男孩手里把刀拿走了。 2. take care (=be careful=look out) Take care!The car is coming! 小心!车来了! 3. take (good) care of (好好)照顾,照料I can take care of the baby all by myself. 我自己能照顾这个小孩。 4. take down 取下来Take down the picture and put up the map of the world. 摘下这张图画,挂上一幅世界地图。 5. take out 拿出Please take out a piece of paper and write down your names on it, OK? 拿出一张纸,在上面写下你们的名字,好吗? 6. take off脱下;飞机(等起飞) ①Sorry! You have to take off your shoes before getting into the computer room. 对不起,在进入微机室之前,先要把你的鞋子脱掉。 ②The plane is going to take off soon. 飞机马上就要起飞了。 7. take one's time 别着急,慢慢来Please take your time!别着急,慢慢来! 8. take one's temperature 量体温 Mingming is ill. The doctor is taking his temperature now. 明明生病了,大夫正在给他量体温。

跟我一起写Makefile

跟我一起写Makefile 陈皓 1 概述 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力。 因为,makefile关系到了整个工程的编译规则。一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令。 makefile带来的好处就是——“自动化编译”,一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率。make是一个命令工具,是一个解释makefile中指令的命令工具,一般来说,大多数的IDE都有这个命令,比如:Delphi的make,Visual C++的nmake,Linux下GNU的make。可见,makefile都成为了一种在工程方面的编译方法。 现在讲述如何写makefile的文章比较少,这是我想写这篇文章的原因。当然,不同产商的make各不相同,也有不同的语法,但其本质都是在“文件依赖性”上做文章,这里,我仅对GNU的make进行讲述,我的环境是RedHat Linux 8.0,make的版本是3.80。必竟,这个make是应用最为广泛的,也是用得最多的。而且其还是最遵循于IEEE 1003.2-1992 标准的(POSIX.2)。 在这篇文档中,将以C/C++的源码作为我们基础,所以必然涉及一些关于C/C++的编译的知识,相关于这方面的内容,还请各位查看相关的编译器的文档。这里所默认的编译器是UNIX下的GCC和CC。 2 关于程序的编译和链接 在此,我想多说关于程序编译的一些规范和方法,一般来说,无论是C、C++、还是pas,首先要把源文件编译成中间代码文件,在Windows下也就是.obj 文件,UNIX下是.o 文件,即Object File,这个动作叫做编译(compile)。然后再把大量的Object File合成执行文件,这个动作叫作链接(link)。 编译时,编译器需要的是语法的正确,函数与变量的声明的正确。对于后者,通常是你需要告诉编译器头文件的所在位置(头文件中应该只是声明,而定义应该放在C/C++文件中),只要所有的语法正确,编译器就可以编译出中间目标文件。一般来说,每个源文件都应该对应于一个中间目标文件(O文件或是OBJ 文件)。 链接时,主要是链接函数和全局变量,所以,我们可以使用这些中间目标文件(O文件或是OBJ文件)来链接我们的应用程序。链接器并不管函数所在的源文件,只管函数的中间目标文件(Object File),在大多数时候,由于源文件太多,编译生成的中间目标文件太多,而在链接时需要明显地指出中间目标文件名,这对于编译很不方便,所以,我们要给中间目标文件打个包,在Windows下这种包叫“库文件”(Library File),也就是.lib 文件,在UNIX下,是Archive File,也就是.a 文件。 总结一下,源文件首先会生成中间目标文件,再由中间目标文件生成执行文件。在编译时,编译器只检测程序语法,和函数、变量是否被声明。如果函数未被声明,编译器会给出一个警告,但可以生成Object File。而在链接程序时,链接器会在所有的Object File中找寻函数的实现,如果找不到,那到就会报链接错

make用法小结

make用法小结 make作使役动词,意思是“使成为”、“使作为”、“使变成”,其后的复合宾语(即宾语+宾语补足语)有以下表达方式: 1. make +宾语+名词(作宾语补足语) ①Most pop singers make music their career. 大多数流行歌手把音乐当作他们的职业。 ②Bill Gates’ Microsoft makes him a legend in the business world. 比尔·盖茨的微软使他成为商界的一个传奇。 ③European football is played in 80 countries,making it the most popular sport in the world. 80个国家踢欧式足球,使它成为世界上最受欢迎的运动。 2. make +宾语+不带to的不定式(作宾语语补足语) ①Nobody made us go to bed at a certain time.没有人让我们在某一固定时间就寝。 ②Pop music makes people feel easy and forget about the real world。 流行音乐令人松弛安心,忘记这真实的世界。 ③Nothing can make me turn against my country.什么也不能使我背叛我的祖国。 ▲make +宾语+不带to的不定式,但改成被动语态时,则要加to。 Children should be made to understand the importance of saving water.应该让孩子们理解节水的重要性。 3. make +宾语+形容词(作宾语补足语) ①What made you so angry ? 什么使你如此生气。 ②The purpose of new technologies is to make life easier,not to make it more difficult. 新技术的目的是使生活变得更加容易,而不是变得更加困难。 ③Internet makes our lives easy and convenient. 互联网使我们的生活变得容易和方便。 ④The chemical structure of water also makes it different from almost everything else on the earth. 水的化学结构还使水不同于世界上几乎所有的其他物质。 4. make +宾语+过去分词(作宾语补足语) ①The teacher raised his voice so that he could make himself heard.老师提高了嗓门以便别人能听到他。 ②Can you easily make yourself understood in English? 你能用英语轻易地表达你的思想吗? ③His actions made him respected. 他的行为使他受到尊敬。 5. make +宾语+介词短语(作宾语补足语) ①You made him into an honest one.你使他成为一个诚实的人。 ①“Make yourself at home,” the hostess said to me as soon as I entered the house. 我刚一进门,女主人就对我说:“别客气,就像在你自己家一样。” 6. make +形式宾语it +形容词或名词(做宾语补足语)+带to的不定式作真正的宾语 ①People in the West make it a rule to buy Christmas presents for their relatives and friends. 西方国家的人把给亲属和朋友买圣诞节礼物成为了一种规则。 ▲有关make 的词组 1.犯错误make a mistake = make mistakes 2.吵闹make a noise 3.答应;许下诺言make a promise 4.列一个购物清单make a shopping list 5.打电话给某人make a telephone call to sb 6.与…交朋友make friends with sb 7. 作出决定make a decision 8. 做鬼脸make a face 9.谋生make a living 10.取笑make fun of 11.赚钱make money 12.约定时间;做到;按时到达make it 13.铺床make one`s bed 14.为…让地方make room for 15.确信;务必;弄清楚make sure 16.下定决心做某事make up one`s mind to do sth

make的用法

使役动词make用法说明 1、make用作使役动词,表示“使”,使用时注意以下几点: (1)后接不定式的复合结构作宾语时,不定式不能带to;如: You have made me feel secure。 但是,若make为被动语态,则不定式必须带to。如: Though he had often made his little sister cry, today he was made to cry by his little sister.虽然他曾经常把他小妹妹弄哭,但今天他被他小妹妹弄哭了。 注意,若make不表示“使”,而表示其他意思则情况不同,比如下面两句,make 后的不定式不是宾语补足语,而是目的状语: We make candles to give light.我们做蜡烛照明。 He made a box to put his money in.他做了个盒子来装钱。 (2)接过去分词作宾语补足语。如: He tries to make his ideas known.他设法让别人知道他的想法。 She had to shout to make herself heard.她必须大声喊才能让人听见她说话。(3)接形容词作宾语补足语。如: Have I made myself clear?我的意思说清楚了吗? We’ll do our best to make you happy.我们会尽一切努力使你幸福。 (4)接介词短语作宾语补足语。如: Sit down and make yourself at home.请坐,不要拘束。 (5)跟由名词构成的复合结构 His scientific pursuits had made him a very observant man. Its excellent properties makes graphene a good candidate for metamaterials. (6)make (使)通常不接现在分词的复合结构作宾语。要表示使某人或某事一直做某事或处于做某事的状态中,英语也可用have sb doing sth。如: 他讲的滑稽的笑话使大家都笑了。 His funny joke made everyone laugh.

Makefile规则

目录 1.简介 3 1.1.准备工作 3 1.2.Makefile介绍 3 1.3.规则简介 4 1.4.make工作原理 4 1.5.使用变量 5 1.6.简化命令 6 1.7.另一种风格 6 1.8.清理 7 2.Makefile 7 2.1.makefile名字 7 2.2.包含 8 2.3.‘MAKEFILE’变量 8 2.4.怎么重新生成makefile 8 2.5.重载makefile 9 3.规则 9 3.1.例子 9 3.2.规则的语法 9 3.3.通配符 10 3.3.1.通配符的缺陷 10 3.3.2.wildcard函数 11 3.4.目录搜索 11 3.4.1.‘VPATH’ 11 3.4.2.选择性搜索 12 3.4.3.使用自动变量 12 3.4.4.目录搜索和隐含规则 12 3.5.PHONY目标 13 3.6.FORCE目标 14 3.7.空目标 14 3.8.内建的特别目标 14 3.9.一个规则多个目标 15 3.10.一个目标多条规则 15 3.11.静态模式规则 16 3.11.1.语法 16 3.11.2.静态模式规则和隐式规则 17 3.12.双冒号规则 17 3.13.自动生成依赖关系 17 4.编写命令 18 4.1.回显 18 4.2.执行 19 4.3.并行执行 19 4.4.错误 19 4.5.中断make 20 4.6.递归使用 20 4.6.1.‘MAKE’变量 20 4.6.2.传递变量到子make 21 5.命令行参数 21 6.参考 25

6.1.指令 25 6.2.函数 26 6.3.自动变量 27 6.4.特别变量 29 GNU Make使用 Make 程式最初设计是为了维护C程式文件防止不必要的重新编译。在使用命令行编译器的时候,修改了一个工程中的头文件,怎么确保包含这个头文件的所有文件都得到编译?目前10机的版本生成是使用批处理程式,编译那些文件依赖于程式的维护者,在模块之间相互引用头文件的情况下,要将所有需要重新编译的文件找出来是一件痛苦的事情;在找到这些文件之后,修改批处理进行编译。实际上这些工作能让make程式来自动完成,make工具对于维护一些具有相互依赖关系的文件特别有用,他对文件和命令的联系(在文件改动时调用来更新其他文件的程式)提供一套编码方法。Make工具的基本概念类似于Proglog语言,你告诉make需要做什么,提供一些规则,make来完成剩下的工作。 1.简介 make工作自动确定工程的哪部分需要重新编译,执行命令去编译他们。虽然make多用于C程式,然而只要提供命令行的编译器,你能将其用于所有语言。实际上,make工具的应用范围不仅于编程,你能描述任和一些文件改动需要自动更新另一些文件的任务来使用他。 1.1.准备工作 如果要使用make,你必须写一个叫做“makefile”的文件,这个文件描述工程中文件之间的关系,提供更新每个文件的命令。典型的工程是这样的:可执行文件靠目标文件来更新,目标文件靠编译源文件来更新。 Makefile写好之后,每次更改了源文件后,只要执行make就足够了,所有必要的重新编译将执行。Make程式利用makefile中的数据库和文件的最后修改时间来确定那个文件需要更新;对于需要更新的文件,make执行数据库中记录的命令。 能提供命令行参数给make来控制那个文件需要重新编译。 1.2.Makefile介绍 Makefile文件告诉make做什么,多数情况是怎样编译和链接一个程式。 这里有一个简单的makefile,描述怎么编译链接由8个C文件和3个头文件组成的一个编辑器: edit : main.o kbd.o command.o display.o insert.o serach.o files.o utils.o cc ?o edit main.o kbd.o command.o display.o insert.o search.o files.o utils.o main.o : main.c defs.h cc ?c main.c kdb.o : kbd.c defs.h command.h cc ?c kbd.c command.o : command.c defs.h command.h cc -c command.c display.o : display.c defs.h buffer.h cc -c display.c insert.o : insert.c defs.hbuffer.h cc -c insert.c search.o : search.c defs.hbuffer.h cc -c search.c files.o : files.c defs.h buffer.h command.h cc -c files.c utils.o : utils.c defs.h cc -c utils.c

makefile新手教程

makefile新手教程 2013-11-08 本文翻译自https://www.wendangku.net/doc/016280936.html,/tutorials/ Makefiles --通过示例说明 编译源代码是沉闷的,尤其是当你想要include一些源代码,却又每次都需要手动敲编译命令的时候。 恩,我有个好消息告诉你...你用手敲命令行去编译的日子(基本上)一去不复返了,因为你将会学习如何编写Makefile。Makefile是配合make命令使用的特殊文件,make命令则会帮助你自动地、神奇般地管理你的工程。 这里你需要先准备以下文件: main.cpp

hello.cpp factorial.cpp functions.cpp 我建议你新建一个空的目录,然后将上述4个文件放入其中。

注意:我使用g++命令编译。你完全可以换成别的编译器 make工具 如果你运行make 它会去寻找当前目录下名字为makefile的文件,并按里面的内容执行。 如果你有很多makefile文件,那么可以用这个命令来执行: 当然还有其他的参数来使用make工具,详情请man make。 构建过程 1.编译器编译源代码文件,输出到目标文件 2.链接器将目标文件链接,并创建可执行文件 手动编译 手动编译并获得可执行文件,是一种琐碎的方式: 基本的Makefile

基本的makefile文件组成如下: 将此语法应用到我们的例子中,就是: all: g++ main.cpp hello.cpp factorial.cpp -o hello 我们将此文件保存为Makefile-1。要运行此makefile,则输入:make -f Makefile-1 在这个例子中可以看到,我们的target叫做all。这是makefile中的默认target。若无指定参数,make工具将按这个target 执行。 我们同时发现,这个例子中的target,也就是all,没有dependencies(依赖文件),因此make会安全地执行后续的system commands(系统命令)。 最后,make根据我们设定的命令完成了编译。 使用依赖文件 有时候使用多个不同的target会很有用,因为当你只修改了工程中的一个文件时,不必重新编译所有代码,只需要编译修改过的部分。比如:

make的用法

The loud music makes me nervous. 嘈杂的音乐会让我觉得紧张。(Grammar Foucs) The color red makes me nervous. 红色会使我紧张。 The exciting music makes me want to dance.兴奋的音乐使我想跳舞 【2014重庆38】He lost his key.It made him in the cold to wait for his wife’s return. A. to stay B. stayed C. stays D. stay We were made to work days and nights.我们被迫日夜工作。 But that music makes me sleepy. 但是那种音乐会让我昏昏欲睡。( 1c )

The color red makes me nervous. 红色会使我紧张。 As for our next meeting, let’s make it the day after tomorrow. make faces 做鬼脸make sure 查明,弄清 make kites 制作风筝make the bed 整理床铺make sentences 造句make a noise 制作噪音make mistakes 犯错make money 赚钱 make progress 取得进步make friends with… 与……交朋友make a telephone 打电话make fun of 取笑 make one’s at home 随便,不拘束make a milk shake 制作一份奶昔make a living谋生make up 组成,编造be made up of 由……组make a plan 制定计划make one’s plan 制定某人的计划make a decision 做决定 make one’s mind 下定决心make one’s bed整理床铺make tea 沏茶

Makefile两个实验

实验十四Makefile工程管理器 14.1 编写包含多文件的Makefile 【实验内容】 编写一个包含多文件的Makefile。 【实验目的】 通过对包含多文件的Makefile的编写,熟悉各种形式的Makefile,并且进一步加深对Makefile中用户自定义变量、自动变量及预定义变量的理解。 【实验平台】 PC机、CentOS 5 操作系统、gcc等工具。 【实验步骤】 1.用vi在同一目录下编辑两个简单的Hello程序,如下所示: #hello.c #include "hello.h" int main() { printf("Hello everyone!\n"); } #hello.h #include 2.仍在同一目录下用vim编辑Makefile,不使用变量替换,用一个目标体实现(即直接将 hello.c和hello.h编译成hello目标体)。并用make验证所编写的Makefile是否正确。 3.将上述Makefile使用变量替换实现。同样用make验证所编写的Makefile是否正确 4.用编辑另一Makefile,取名为Makefile1,不使用变量替换,但用两个目标体实现(也 就是首先将hello.c和hello.h编译为hello.o,再将hello.o编译为hello),再用make 的‘-f’选项验证这个Makefile1的正确性。 5.将上述Makefile1使用变量替换实现 【详细步骤】 1.用vi打开上述两个代码文件…hello.c?和…hello.h? 2.在shell命令行中用gcc尝试编译,使用命令:…gcc hello.c -o hello?,并运行hello可执 行文件查看结果。 3.删除此次编译的可执行文件:rm –rf hello 4.用vim编辑Makefile,如下所示: hello:hello.c hello.h gcc hello.c -o hello 5.退出保存,在shell中键入:make查看结果 6.再次用vim打开Makefile,用变量进行替换,如下所示: OBJS :=hello.o CC :=gcc hello:$(OBJS) $(CC) $^ -o $@ 7.退出保存,在shell中键入:make查看结果

make_初中用法小结与练习

make 初中用法小结 1. 当make的意思是“做、制造、制作”时,常用的句型是: (1) make sth. (to do sth.) 意为“制造某物”。例如: She can make kites. 她会制作风筝。 (2) make sb. sth. / make sth. for sb. 意为“为某人制作某物”。例如: His mother made him a beautiful coat. / His mother made a beautiful coat for him. 他的母亲为他缝制了一件漂亮的外衣。 (3) 被动语态中常用be made of / from, be made in, be made by等短语来表示“……是由……制成的”,“……是在……制成的”和“……是被……制成的”。例如:Wine is made from grapes. 酒是由葡萄酿制成的。 These cars were made in Changchun. 这些汽车是在长春制造的。 2. 当make的意思是“使、使得”时,一般用于“make + 宾语+ 宾补”这种结构, 常用的句型是: (1) make + sb. / sth. + adj. 意为“使某人或某物处于某种状态”。例如: The news made him happy. 这个消息使他很高兴。 在此句型中,通常用it作形式宾语,而动词不定式或从句才是真正的宾语,而且要后置。例如: Computers make it easier to learn English. 电脑使英语学习更加容易。 当然,除了接形容词作宾补外,还可以接名词、动词的过去分词等作宾补。例如: They all want to make Jim their monitor. (名词)他们都想让吉姆当班长。 I spoke loudly in order to make my voice heard.(过去分词)我大声地讲话,以便让别人听到。 (2) make + sb. / sth. + 省略to的动词不定式, 意为“使某人或某物做某事”。例如: Our English teacher often makes us retell the texts. 我们的英语老师经常让我们复述课文。 当把这样的句子变为被动语态时,原句中省略的动词不定式符号to必须要还原。如把上面的句子变为被动语态,应为: We are often made to retell the texts (by our English teacher). 3. make还可以构成大量短语: make the bed make a plan make trouble make faces 做鬼脸 make friends with 与……交朋友 make cakes 做蛋糕 make noises 制造噪音 make paper 造纸 make money 赚钱 make yourself at home 请自便

make 用法归纳

make 用法归纳 作者:张若红文章来源:英语辅导报 一、make用作及物动词,在主动语态中的含义主要有: 1. 做;制作;制造。如: Can you make any mooncakes? 你会做些月饼吗? ◆make后可跟双宾语,间接宾语后移时一般用for引导。如: My uncle will make me a kite. = My uncle will make a kite for me. 叔叔将为我做一只风筝。 2. 使;使之。如: Have I made myself clear? 我讲清楚了没有? 3. 迫使;令。如: I don't like milk, but she made me drink it. 我不喜欢牛奶,可是她强迫我喝。 4. 总计;等于。如: Two and two makes four. 二加二等于四。 5. 准备;布置;整理。如: You must make the bed after you get up. 你起床后必须整理好你的床铺。 6. 构成;组成;成为。如: Daniel scored another goal, but one player does not make a team. 丹尼尔又踢进了一球,但是独木不成林。 二、make用作及物动词,意为“使;让”,在主动语态中其后要跟省略to的不定式作宾语补足语,而在被动语态中,to不能省去。如: Don't make the baby cry anymore. 不要再让那个孩子哭了。 She was made to wait for over an hour. 她被迫等了一个多钟头。 ◆英语中,类似于make这种用法的动词还有let, have, hear, see, watch, notice, feel等。如: I saw him put the key into the keyhole, turn it and open the door. 我看见他把钥匙插进锁孔,转动钥匙,然后打开了门。 She was seen to go into the classroom.

Makefile超强经典教程

Makefile经典教程 0 Makefile概述 (2) 0.1关于程序的编译和链接 (2) 1 Makefile介绍 (3) 1.1 Makefile的规则 (4) 1.2一个示例 (4) 1.3 make是如何工作的 (6) 1.4 makefile中使用变量 (7) 1.5让make自动推导 (8) 1.6另类风格的makefile (9) 1.7清空目标文件的规则 (10) 2 Makefile总述 (11) 2.1 Makefile里有什么? (11) 2.2Makefile的文件名 (12) 2.3引用其它的Makefile (12) 2.4环境变量MAKEFILES (13) 2.5 make的工作方式 (13) 3 Makefile书写规则 (14) 3.1规则举例 (14) 3.2规则的语法 (14) 3.3在规则中使用通配符 (15) 3.4文件搜寻 (16) 3.5伪目标 (17) 3.6多目标 (19) 3.7静态模式 (20) 3.8自动生成依赖性 (22) 4 Makefile书写命令 (24) 4.1显示命令 (24) 4.2命令执行 (25) 4.3命令出错 (25) 4.4嵌套执行make (26) 4.5定义命令包 (29) 1

0 Makefile概述 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力。 因为,makefile关系到了整个工程的编译规则。一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令。 makefile带来的好处就是——“自动化编译”,一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率。make是一个命令工具,是一个解释makefile中指令的命令工具,一般来说,大多数的IDE都有这个命令,比如:Delphi的make,Visual C++的nmake,Linux下GNU的make。可见,makefile都成为了一种在工程方面的编译方法。 现在讲述如何写makefile的文章比较少,这是我想写这篇文章的原因。当然,不同产商的make各不相同,也有不同的语法,但其本质都是在“文件依赖性”上做文章,这里,我仅对GNU的make进行讲述,我的环境是RedHat Linux 8.0,make的版本是3.80。必竟,这个make是应用最为广泛的,也是用得最多的。而且其还是最遵循于IEEE 1003.2-1992 标准的(POSIX.2)。 在这篇文档中,将以C/C++的源码作为我们基础,所以必然涉及一些关于C/C++的编译的知识,相关于这方面的内容,还请各位查看相关的编译器的文档。这里所默认的编译器是UNIX下的GCC和CC。 0.1关于程序的编译和链接 在此,我想多说关于程序编译的一些规范和方法,一般来说,无论是C、C++、还是pas,首先要把源文件编译成中间代码文件,在Windows下也就是.obj 文件,UNIX

windows下的makefile教程

windows下的makefile教程 https://www.wendangku.net/doc/016280936.html,/mirror_hc/archive/2008/03/26/2221117.aspx joeliu 制作4/19/2011 22:10:29 1. 先说几句废话 以前看书时经常遇到makefile,nmake这几个名词,然后随之而来的就是一大段莫名其妙的代码,把我看得云里雾里的。在图书馆和google上搜了半天,也只能找到一些零零星星的资料,把我一直郁闷得不行。最近因缘巧合,被我搞到了一份传说中的MASM6手册,终于揭开了NMAKE的庐山真面目。想到那些可能正遭受着同样苦难的同志以及那些看到E文就头晕的兄弟,所以就写了这篇文章。假如大家觉得有帮助的话,记得回复一下,当作鼓励!如果觉得很白痴,也请扔几个鸡蛋.本文是总结加翻译,对于一些关键词以及一些不是很确定的句子,保留了英文原版,然后再在括号里给出自己的理解以作参考。由于水平有限,加上使用NMAKE的经验尚浅,有不对的地方大家记得要指正唷。MASM6手册在AOGO(好像是)可以download,在我的BLOG上有到那的链接。 2. 关于NMAKE Microsoft Program Maintenance Utility,外号NMAKE,顾名思义,是用来管理程序的工具。其实说白了,就是一个解释程序。它处理一种叫做makefile的文件(以mak为后缀),解释里面的语句并执行相应的指令。我们编写makefile文件,按照规定的语法描述文件之间的依赖关系,以及与该依赖关系相关联的一系列操作。然后在调用NMAKE时,它会检查所有相关的文件,如果目标文件(target file,下文简称target,即依赖于其它文件的文件)的time stamp(就是文件最后一次被修改的时间,一个32位数,表示距离1980年以来经过的时间,以2秒为单位)小于依赖文件(dependent file,下文简称dependent,即被依赖的文件)的time stamp,NMAKE就执行与该依赖关系相关联的操作。请看下面这个例子:foo.exe : first.obj second.obj link first.obj,second.obj 第一行定义了依赖关系,称为dependency line;第二行给出了与该依赖关系相关联的操作,称为command line。因为foo.exe由first.obj和second.obj连接而成,所以说foo.exe依赖于first.ogj和second.obj,即foo.exe为target,first.obj和second.obj为dependent。如果first.obj和second.obj中的任何一个被修改了(其time stamp更大),则调用link.exe,重新连接生成foo.exe。这就是NMAKE的执行逻辑。 综上,NMAKE的核心就是这3个家伙——依赖关系,操作和判定逻辑(target.timestamp < dependent.timestamp,如果为true,就执行相应操作)。 3. MAKEFILE的语法 现在详细讨论一下makefile的语法。makefile就像一个玩具型的程序语言,麻雀虽小,但五脏具全。makefile的组成部分包括:描述语句(description block),推导规则(inference rules),宏和指令(directive)。 描述语句就是dependent lines和command lines的组合;推导规则就是预先定义好的或用户自己定义的依赖关系和关联命令;宏就不用说了吧;指令就是内定的一些可以被NMAKE识别的控制命令,提供了很多有用的功能。 3.1 特殊符号

make用法小结

make用法小结 一、做,制作 1.make sth He can make kites.他会做风筝。 2.make +双宾make sb sth=make sth for sb His father made him a toy. =His father made a toy for him. 3.be made+介词 ①be made of 由……做成(能看出原料) ②be made from由……制成(看不出原料) ③be made by 由/被(某人)做 ④be made in 在某地被制造 ⑤be made into 被制成…… 例如: Rice can be made into wine. 米可以酿成酒。 Wine can be made from rice.酒可以由米酿成。 (注意主语的变化) 二、使,让(主语+谓语+宾语+宾语补足语) 1.make sb do sth.使/让某人做某事 Our English teacher often makes us retell the texts. 我 们的英语老师经常让我们复述课文。 当把这样的句子变为被动语态时,原句 中省略的动词不定式符号to必须要还原。如 把上面的句子变为被动语态,应为: We are often made to retell the texts (by our English teacher). 2.make sb/sth adj. The news made him happy. 这个消息使他很高 兴。 在此句型中,通常用it作形式宾语, 而动词不定式或从句才是真正的宾语,而且要后置。例如: Computers make it easier to learn English. 电脑使英语学习更加容易。 3.make sb/sth done(过去分词) It’s too noisy.I can’t make my voice heard. 太吵了,我不能让别人听到。 4.make sb n. They all want to make Jim their monitor. (名词)他们都想让吉姆当班长。 三、make 的相关短语 make a decision (下决定) make a face / faces (做鬼脸) make friends with (与……交友) make progress (取得进步) make sure (确信、弄清楚 make up one‘s mind to do sth 下决心做某事 make money 挣钱,赚钱 make a mistake/mistakes 犯错误 make the bed 整理床铺

make用法小结及练习

make用法及训练make是初中英语中用法比较多的一个动词,主要有: 1.make 构成的一些固定搭配 make faces做鬼脸 make friends with…与…交朋友 make breakfast 做早餐 make noises制造噪音 make money赚钱 make the bed铺床 make flashcards制作抽认卡 make progress取得进步 make mistakes犯错 make decisions to do…下决心干… make yourself at home使某人感到宾至如归make up占…/ 编造,组成,拼凑成make a living(by) doing谋生 make a fire生火 make it earlier把时间订早一点 make up for弥补 make sure确保,弄清楚 make use of利用 be made of (看出原料)/ from(看不出原原料)由…制成 be made in在…制成 be made into被制成… be made up of由…组成 2.make 的各种用法 ①make 宾语+n. 意为“使,让某人/某物(成为)…” We made him our monitor. 我们选了他做班长。 ②make 宾语+adj. 意为“使,让某人/某事(变得)…” What he did made me unhappy. 他所做的事使我不高兴。 We will make our country more and more beautiful.我们将会使我们的国家越来越美丽。 ③make 宾语+do(不带to的不定式)…意为“使,让某人干…” Our teacher makes us feel more confident.我们的都是使我们更加自信。 此类结构变被动to必须还原。类似的词还有“一感二听三让四看” ④make 宾语+doing…意为“使,让某人一直干…” He makes the boys standing all the time.他使那个男孩一直站着。 ⑤make 宾语+done…意为“使,让某人被…” make oneself understood/ heard / known让别人听懂/ 听见/ 知道 He raised his voice to make himself heard.他提高声音使别人听见。 Make专练 1. -- What do you think of what she did. -- What she did still us feel very sad now. A. makes B. make C. is making D. is made 2. The baby was made ______ (cry) by the other kids. 3. The paper is made_______ ( of / from) the wood. 4. You should do better in math. Because it ______ 30% of the exam. A. makes of B. makes from C. makes up D. makes up of 5. His father makes a living __________ (sell) newspaper. 汉译英。 1.刚才什么使他笑?。______________________________________________________ 2.他已经下定心了吗?______________________________________________________

相关文档