⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gnu-make-translated.html

📁 GNU make Version 3.79中文版
💻 HTML
📖 第 1 页 / 共 5 页
字号:
	font-family:"Courier New";	mso-bidi-font-family:"Times New Roman";}@list l17:level3	{mso-level-number-format:bullet;	mso-level-text:\F0A7;	mso-level-tab-stop:108.0pt;	mso-level-number-position:left;	text-indent:-18.0pt;	mso-ansi-font-size:10.0pt;	font-family:Wingdings;}@list l18	{mso-list-id:1513033926;	mso-list-type:hybrid;	mso-list-template-ids:1718397362 -1 -1 -1 -1 -1 -1 -1 -1 -1;}@list l18:level1	{mso-level-number-format:bullet;	mso-level-text:\F0B7;	mso-level-tab-stop:36.0pt;	mso-level-number-position:left;	text-indent:-18.0pt;	mso-ansi-font-size:10.0pt;	font-family:Symbol;}@list l19	{mso-list-id:1548444934;	mso-list-type:hybrid;	mso-list-template-ids:-1450690172 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}@list l19:level1	{mso-level-number-format:bullet;	mso-level-text:\F06C;	mso-level-tab-stop:57.0pt;	mso-level-number-position:left;	margin-left:57.0pt;	text-indent:-21.0pt;	font-family:Wingdings;}@list l20	{mso-list-id:1556967004;	mso-list-type:hybrid;	mso-list-template-ids:785697040 -1 -1 -1 -1 -1 -1 -1 -1 -1;}@list l20:level1	{mso-level-tab-stop:36.0pt;	mso-level-number-position:left;	text-indent:-18.0pt;}@list l20:level2	{mso-level-tab-stop:72.0pt;	mso-level-number-position:left;	text-indent:-18.0pt;}@list l21	{mso-list-id:1652903880;	mso-list-type:hybrid;	mso-list-template-ids:-909846348 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}@list l21:level1	{mso-level-number-format:bullet;	mso-level-text:\F06C;	mso-level-tab-stop:42.0pt;	mso-level-number-position:left;	margin-left:42.0pt;	text-indent:-21.0pt;	font-family:Wingdings;}@list l22	{mso-list-id:1734622424;	mso-list-type:hybrid;	mso-list-template-ids:-951392404 -1 -1 -1 -1 -1 -1 -1 -1 -1;}@list l22:level1	{mso-level-tab-stop:36.0pt;	mso-level-number-position:left;	text-indent:-18.0pt;}@list l23	{mso-list-id:1836920527;	mso-list-type:hybrid;	mso-list-template-ids:1730284364 577417942 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}@list l23:level1	{mso-level-start-at:9;	mso-level-text:%1;	mso-level-tab-stop:36.0pt;	mso-level-number-position:left;	text-indent:-18.0pt;}@list l24	{mso-list-id:1949775779;	mso-list-type:hybrid;	mso-list-template-ids:1333965310 -786638080 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}@list l24:level1	{mso-level-start-at:3;	mso-level-text:%1;	mso-level-tab-stop:36.0pt;	mso-level-number-position:left;	text-indent:-18.0pt;}@list l25	{mso-list-id:2008753349;	mso-list-type:hybrid;	mso-list-template-ids:-1952918990 -1 -1 -1 -1 -1 -1 -1 -1 -1;}@list l25:level1	{mso-level-number-format:bullet;	mso-level-text:\F0B7;	mso-level-tab-stop:36.0pt;	mso-level-number-position:left;	text-indent:-18.0pt;	mso-ansi-font-size:10.0pt;	font-family:Symbol;}@list l26	{mso-list-id:2080396334;	mso-list-type:hybrid;	mso-list-template-ids:2140554694 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}@list l26:level1	{mso-level-number-format:bullet;	mso-level-text:\F06C;	mso-level-tab-stop:21.0pt;	mso-level-number-position:left;	margin-left:21.0pt;	text-indent:-21.0pt;	font-family:Wingdings;}@list l27	{mso-list-id:2110544005;	mso-list-type:hybrid;	mso-list-template-ids:1751013086 -1 -1 -1 -1 -1 -1 -1 -1 -1;}@list l27:level1	{mso-level-number-format:bullet;	mso-level-text:\F0B7;	mso-level-tab-stop:36.0pt;	mso-level-number-position:left;	text-indent:-18.0pt;	mso-ansi-font-size:10.0pt;	font-family:Symbol;}@list l28	{mso-list-id:2118519092;	mso-list-type:hybrid;	mso-list-template-ids:1571715596 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}@list l28:level1	{mso-level-number-format:bullet;	mso-level-text:\F06C;	mso-level-tab-stop:21.0pt;	mso-level-number-position:left;	margin-left:21.0pt;	text-indent:-21.0pt;	font-family:Wingdings;}@list l29	{mso-list-id:2123529353;	mso-list-type:hybrid;	mso-list-template-ids:-961093682 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}@list l29:level1	{mso-level-number-format:bullet;	mso-level-text:\F06C;	mso-level-tab-stop:57.0pt;	mso-level-number-position:left;	margin-left:57.0pt;	text-indent:-21.0pt;	font-family:Wingdings;}@list l30	{mso-list-id:2141999295;	mso-list-type:hybrid;	mso-list-template-ids:-296046676 1916971872 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}@list l30:level1	{mso-level-text:%1、;	mso-level-tab-stop:60.0pt;	mso-level-number-position:left;	margin-left:60.0pt;	text-indent:-18.0pt;}ol	{margin-bottom:0cm;}ul	{margin-bottom:0cm;}--></style></head><body lang="ZH-CN" link="blue" vlink="purple" style=""><div class="Section1" style=""><h1 align="center" style="text-align: center;"><span lang="EN-US" style="font-family: 宋体;">GNU Make 使用手册(中译版)<o:p></o:p></span></h1><p class="MsoNormal"><span style="font-family: 宋体;">翻译:于凤昌<span lang="EN-US"><o:p></o:p></span></span></p><p class="MsoNormal"><span style="font-family: 宋体;">译者注:本人在阅读<span lang="EN-US">Linux源代码过程中发现如果要全面了解Linux的结构、理解Linux的编程总体设计及思想必须首先全部读通Linux源代码中各级的Makefile文件。目前,在网上虽然有一些著作,但都不能全面的解释Linux源代码中各级的Makefile文件,因此本人认真阅读了GNUMake 使用手册(3.79)版原文,在此基础上翻译了该手册,以满足对Linux源代码有兴趣或者希望采用GCC编写程序但对缺乏GNUMake全面了解之人士的需要。本人是业余爱好不是专业翻译人士,如果有问题请通过电子信箱与我联系共同商讨,本人的E-mail为:<a href="mailto:yfc70@public2.lyptt.ha.cn">yfc70@public2.lyptt.ha.cn</a> 。</span></span><b><span style="font-size: 12pt; font-family: 宋体;">注意在文章中出现的斜体加粗字表示章节。</span></b><span lang="EN-US" style="font-family: 宋体;"><o:p></o:p></span></p><h1 align="center" style="text-align: center;"><span lang="EN-US" style="font-family: 宋体;">GNU </span><code><span lang="EN-US" style="font-size: 10pt; font-family: 宋体;">make</span></code><span lang="EN-US" style="font-family: 宋体;"> Version 3.79<o:p></o:p></span></h1><h2><span lang="EN-US" style="font-family: 宋体;">April 2000<o:p></o:p></span></h2><p class="MsoNormal" align="center" style="text-align: center;"><span lang="EN-US" style="font-family: 宋体;">Richard M. Stallman and Roland McGrath<o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 18pt;"><b><span lang="EN-US" style="font-size: 18pt; font-family: 宋体;"><!--[if !supportEmptyParas]-->&#160;<!--[endif]--><o:p></o:p></span></b></p><h1><span style="font-family: 宋体;">目录<span lang="EN-US"><o:p></o:p></span></span></h1><p class="MsoNormal" style="margin-left: 18pt;"><span lang="EN-US" style="font-family: 宋体;">1 <a href="#_1_Make_%B8%C5%CA%F6"><code><span style="">make概述</span></code></a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">1.1 <a href="#_1.1%D4%F5%D1%F9%D4%C4%B6%C1%B1%BE%CA%D6%B2%E1">怎样阅读本手册</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">1.2 <a href="#_1.2%CE%CA%CC%E2%BA%CDBUG">问题和BUG</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 18pt;"><span lang="EN-US" style="font-family: 宋体;">2 <a href="#_2_Makefile%CE%C4%BC%FE%BD%E9%C9%DC">Makefile文件介绍</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">2.1 <a href="#_2.1_%B9%E6%D4%F2%B5%C4%D1%F9%CA%BD">规则的格式</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">2.2<a href="#_2.2%D2%BB%B8%F6%BC%F2%B5%A5%B5%C4Makefile%CE%C4%BC%FE">一个简单的Makefile文件</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">2.3<a href="#_2.3_make%CA%C7%B4%A6%C0%EDmakefile%CE%C4%BC%FE%B5%C4%B9%FD%B3%CC">make处理Makefile文件的过程</a><o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">2.4<a href="#_2.4%CA%B9%D3%C3%B1%E4%C1%BF%BC%F2%BB%AFmakefile%CE%C4%BC%FE">使用变量简化Makefile文件</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">2.5<a href="#_2.5_%C8%C3make%CD%C6%B6%CF%C3%FC%C1%EE">让make推断命令</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">2.6<a href="#_2.6_%C1%ED%D2%BB%D6%D6%B7%E7%B8%F1%B5%C4makefile%CE%C4%BC%FE">另一种风格的Makefile文件</a><o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">2.7<a href="#_2.7_%D4%DA%C4%BF%C2%BC%D6%D0%C9%BE%B3%FD%CE%C4%BC%FE%B5%C4%B9%E6%D4%F2">在目录中删除文件的规则</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 36pt; text-indent: -18pt;"><!--[if !supportLists]--><span lang="EN-US" style="font-family: 宋体;">3<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-stretch: normal; font-size-adjust: none;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></span><!--[endif]--><span lang="EN-US" style="font-family: 宋体;"><a href="#_3_%B1%E0%D0%B4makefile%CE%C4%BC%FE">编写Makefile文件</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">3.1<a href="#_3.1_makefile%CE%C4%BC%FE%B5%C4%C4%DA%C8%DD">Makefile文件的内容</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">3.2<a href="#_3.2_makfile%CE%C4%BC%FE%C3%FB%D7%D6%B5%C4%B9%E6%B6%A8">Makefile文件的命名</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">3.3<a href="#_3.3_%B0%FC%BA%AC%C6%E4%CB%FC%B5%C4makefile%CE%C4%BC%FE">包含其它的Makefile文件</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">3.4<a href="#_3.4_%BB%B7%BE%B3%B1%E4%C1%BFmakefiles"><code><span style="">变量MAKEFILES</span></code></a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">3.5<a href="#_3.5_makefile%CE%C4%BC%FE%D6%D8%D0%C2%C9%FA%B3%C9%B5%C4%B9%FD%B3%CC">Makefile文件重新生成的过程</a><o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">3.6<a href="#_3.6_%BD%E2%BE%F6%C6%E4%CB%FCmakefile%CE%C4%BC%FE%D6%D0%B5%C4%B3%E5%CD%BB">重载其它Makefile文件</a><o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">3.7<a href="#_3.7_make%B6%C1%C8%A1makefile%CE%C4%BC%FE%B5%C4%B9%FD%B3%CC">make读取Makefile文件的过程</a><o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 18pt;"><span lang="EN-US" style="font-family: 宋体;">4 <a href="#_4%B1%E0%D0%B4%B9%E6%D4%F2">编写规则</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">4.1<a href="#_4.1%B9%E6%D4%F2%B5%C4%D3%EF%B7%A8">规则的语法</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">4.2<a href="#_4.2_%D4%DA%CE%C4%BC%FE%C3%FB%D6%D0%CA%B9%D3%C3%CD%A8%C5%E4%B7%FB">在文件名中使用通配符</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 90pt;"><span lang="EN-US" style="font-family: 宋体;">4.2.1<a href="#_4.2.1%CD%A8%C5%E4%B7%FB%B5%C4%C0%FD%D7%D3">通配符例子</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 90pt;"><span lang="EN-US" style="font-family: 宋体;">4.2.2<a href="#_4.2.2%CA%B9%D3%C3%CD%A8%C5%E4%B7%FB%B5%C4%B3%A3%BC%FB%B4%ED%CE%F3">使用通配符的常见错误</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 90pt;"><span lang="EN-US" style="font-family: 宋体;">4.2.3<a href="#_4.2.3%CD%A8%C5%E4%B7%FB%BA%AF%CA%FD"><code><span style="">函数wildcard</span></code></a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">4.3<a href="#_4.3%D4%DA%B2%BB%CD%AC%CE%C4%BC%FE%BC%D0%D6%D0%CB%D1%D1%B0%D2%C0%C0%B5">在目录中搜寻依赖</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 90pt;"><span lang="EN-US" style="font-family: 宋体;">4.3.1<a href="#_4.3.1_VPATH%A3%BA%CB%F9%D3%D0%D2%C0%C0%B5%B5%C4%CB%D1%D1%B0%C2%B7%BE%B6">VPATH:所有依赖的搜寻路径</a><o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 90pt;"><span lang="EN-US" style="font-family: 宋体;">4.3.2<a href="#_4.3.2_vpath%D6%B8%C1%EE">vpath指令</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 90pt;"><span lang="EN-US" style="font-family: 宋体;">4.3.3<a href="#_4.3.3%CE%C4%BC%FE%BC%D0%B5%C4%CB%D1%D1%B0%B9%FD%B3%CC">目录搜寻过程</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 90pt;"><span lang="EN-US" style="font-family: 宋体;">4.3.4<a href="#_4.3.4_%CE%AA%CE%C4%BC%FE%BC%D0%CB%D1%D1%B0%B1%E0%D0%B4shell%C3%FC%C1%EE">编写搜寻目录的shell命令</a><o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 90pt;"><span lang="EN-US" style="font-family: 宋体;">4.3.5<a href="#_4.3.5_%CE%C4%BC%FE%BC%D0%CB%D1%D1%B0%BA%CD%D2%FE%BA%AC%B9%E6%D4%F2">目录搜寻和隐含规则</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 90pt;"><span lang="EN-US" style="font-family: 宋体;">4.3.6<a href="#_4.3.6_%C1%AC%BD%D3%BF%E2%B5%C4%CE%C4%BC%FE%BC%D0%CB%D1%D1%B0">连接库的搜寻目录</a> <o:p></o:p></span></p><p class="MsoNormal" style="margin-left: 54pt;"><span lang="EN-US" style="font-family: 宋体;">4.4<a href="#_4.4%BC%D9%CF%EB%C4%BF%B1%EA">假想目标</a> <o:p></o:p></span></p>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -