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

📄 00000003.htm

📁 一份很好的linux入门资料
💻 HTM
📖 第 1 页 / 共 2 页
字号:
&nbsp;让我们由一个&nbsp;helloworld&nbsp;的&nbsp;RPM&nbsp;包裹档案学起吧,保证简单到&nbsp;<BR>&nbsp;辣翻天。您可以照著整个范例,自行演练一番,由於它们既小又简单,&nbsp;<BR>&nbsp;应该不致於对您的系统造成任何影响。&nbsp;<BR>&nbsp;<BR>&nbsp;□&nbsp;咱们「清纯」的&nbsp;source&nbsp;<BR>&nbsp;假设状况:&nbsp;<BR>&nbsp;这个&nbsp;helloworld-1.0-1.tgz&nbsp;档案里就只有两个档案,&nbsp;<BR>&nbsp;一个是&nbsp;README,内容如下&nbsp;(&nbsp;其实内容一点也不重要&nbsp;):&nbsp;<BR>&nbsp;Simple&nbsp;Example&nbsp;for&nbsp;RPM&nbsp;Package&nbsp;Building&nbsp;DEMO.&nbsp;<BR>&nbsp;一个是&nbsp;helloworld.c&nbsp;,内容如下&nbsp;(&nbsp;因陋就简啦,反正这也不重要&nbsp;):&nbsp;<BR>&nbsp;main()&nbsp;<BR>&nbsp;{&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;Hello,&nbsp;World\n&quot;);&nbsp;<BR>&nbsp;}&nbsp;<BR>&nbsp;好的,你必须把这个&nbsp;tgz&nbsp;档案放在&nbsp;/usr/src/redhat/SOURCES&nbsp;底下。&nbsp;<BR>&nbsp;<BR>&nbsp;□&nbsp;编写&nbsp;spec&nbsp;档案&nbsp;<BR>&nbsp;必须在&nbsp;/usr/src/redhat/SPECS&nbsp;底下编写&nbsp;helloworld-1.0-1.spec,&nbsp;<BR>&nbsp;内容范例:&nbsp;<BR>&nbsp;Summary:&nbsp;Simple&nbsp;Example&nbsp;for&nbsp;RPM&nbsp;Building&nbsp;DEMO.&nbsp;<BR>&nbsp;Name:&nbsp;helloworld&nbsp;<BR>&nbsp;Version:&nbsp;1.0&nbsp;<BR>&nbsp;Release:&nbsp;1&nbsp;<BR>&nbsp;Copyright:&nbsp;Open&nbsp;Source&nbsp;<BR>&nbsp;Group:&nbsp;Extensions/Chinese&nbsp;<BR>&nbsp;Source:&nbsp;helloworld-1.0-1.tgz&nbsp;<BR>&nbsp;Packager:&nbsp;Penelope&nbsp;Marr&nbsp;&lt;<A HREF="mailto:marr@nccu.edu.tw>">marr@nccu.edu.tw></A>&nbsp;<BR>&nbsp;%description&nbsp;&nbsp;<BR>&nbsp;This&nbsp;package&nbsp;is&nbsp;used&nbsp;as&nbsp;a&nbsp;demo&nbsp;for&nbsp;RPM&nbsp;building&nbsp;only.&nbsp;<BR>&nbsp;%changelog&nbsp;<BR>&nbsp;*&nbsp;Thu&nbsp;Jul&nbsp;16&nbsp;1998&nbsp;Penelope&nbsp;Marr&nbsp;&lt;<A HREF="mailto:marr@nccu.edu.tw>">marr@nccu.edu.tw></A>&nbsp;<BR>&nbsp;-&nbsp;build&nbsp;for&nbsp;the&nbsp;first&nbsp;time.&nbsp;&nbsp;<BR>&nbsp;%prep&nbsp;<BR>&nbsp;%setup&nbsp;-c&nbsp;<BR>&nbsp;%build&nbsp;<BR>&nbsp;make&nbsp;helloworld&nbsp;<BR>&nbsp;%install&nbsp;&nbsp;<BR>&nbsp;install&nbsp;-m&nbsp;755&nbsp;helloworld&nbsp;/usr/local/bin/helloworld&nbsp;<BR>&nbsp;%files&nbsp;<BR>&nbsp;%doc&nbsp;README&nbsp;<BR>&nbsp;/usr/local/bin/helloworld&nbsp;<BR>&nbsp;<BR>&nbsp;□&nbsp;启动&nbsp;rpm&nbsp;-ba&nbsp;...&nbsp;<BR>&nbsp;example#&nbsp;cd&nbsp;/usr/src/redhat/SPECS&nbsp;<BR>&nbsp;example#&nbsp;rpm&nbsp;-ba&nbsp;helloworld-1.0-1.spec&nbsp;1&gt;&nbsp;/tmp/out&nbsp;2&gt;&nbsp;/tmp/err&nbsp;<BR>&nbsp;<BR>&nbsp;这种方式,可以方便我们更容易掌握相关资讯。&nbsp;<BR>&nbsp;<BR>&nbsp;五、制作「可随处安装」的包裹档案&nbsp;&nbsp;<BR>&nbsp;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-&nbsp;<BR>&nbsp;所谓「relocatable&nbsp;package」,在下将之称为「可随处安装的包裹档案」,&nbsp;<BR>&nbsp;相关的详细说明,可以参考&nbsp;Maximum&nbsp;RPM&nbsp;第十五章。&nbsp;<BR>&nbsp;由於多了&nbsp;Prefix&nbsp;的设定功能,使得这类的包裹档案附加更大的弹性,&nbsp;<BR>&nbsp;非常实用,但同时,也额外增加包裹档案制作的难度。&nbsp;<BR>&nbsp;内容范例:&nbsp;<BR>&nbsp;Summary:&nbsp;Simple&nbsp;Example&nbsp;for&nbsp;RPM&nbsp;Building&nbsp;DEMO.&nbsp;<BR>&nbsp;Name:&nbsp;helloworld&nbsp;<BR>&nbsp;Version:&nbsp;1.0&nbsp;<BR>&nbsp;Release:&nbsp;2&nbsp;<BR>&nbsp;Copyright:&nbsp;Open&nbsp;Source&nbsp;<BR>&nbsp;Group:&nbsp;Extensions/Chinese&nbsp;<BR>&nbsp;Source:&nbsp;helloworld-1.0-1.tgz&nbsp;<BR>&nbsp;Packager:&nbsp;Penelope&nbsp;Marr&nbsp;&lt;<A HREF="mailto:marr@nccu.edu.tw>">marr@nccu.edu.tw></A>&nbsp;<BR>&nbsp;Prefix:&nbsp;/usr/local&nbsp;<BR>&nbsp;%description&nbsp;<BR>&nbsp;This&nbsp;package&nbsp;is&nbsp;used&nbsp;as&nbsp;a&nbsp;demo&nbsp;for&nbsp;RPM&nbsp;building&nbsp;only.&nbsp;<BR>&nbsp;%changelog&nbsp;<BR>&nbsp;*&nbsp;Fri&nbsp;Jul&nbsp;17&nbsp;1998&nbsp;Penelope&nbsp;Marr&nbsp;&lt;<A HREF="mailto:marr@nccu.edu.tw>">marr@nccu.edu.tw></A>&nbsp;<BR>&nbsp;-&nbsp;make&nbsp;the&nbsp;relocatable&nbsp;package.&nbsp;<BR>&nbsp;*&nbsp;Thu&nbsp;Jul&nbsp;16&nbsp;1998&nbsp;Penelope&nbsp;Marr&nbsp;&lt;<A HREF="mailto:marr@nccu.edu.tw>">marr@nccu.edu.tw></A>&nbsp;<BR>&nbsp;-&nbsp;build&nbsp;for&nbsp;the&nbsp;first&nbsp;time.&nbsp;&nbsp;<BR>&nbsp;%prep&nbsp;<BR>&nbsp;%setup&nbsp;-c&nbsp;<BR>&nbsp;%build&nbsp;<BR>&nbsp;make&nbsp;helloworld&nbsp;<BR>&nbsp;%install&nbsp;<BR>&nbsp;install&nbsp;-m&nbsp;755&nbsp;helloworld&nbsp;/usr/local/bin/helloworld&nbsp;<BR>&nbsp;%files&nbsp;<BR>&nbsp;%doc&nbsp;README&nbsp;<BR>&nbsp;/usr/local/bin/helloworld&nbsp;<BR>&nbsp;<BR>&nbsp;□&nbsp;启动&nbsp;rpm&nbsp;-ba&nbsp;...&nbsp;<BR>&nbsp;example#&nbsp;cd&nbsp;/usr/src/redhat/SPECS&nbsp;<BR>&nbsp;example#&nbsp;rpm&nbsp;-ba&nbsp;helloworld-1.0-1.spec&nbsp;1&gt;&nbsp;/tmp/out&nbsp;2&gt;&nbsp;/tmp/err&nbsp;<BR>&nbsp;example#&nbsp;rpm&nbsp;-ba&nbsp;helloworld-1.0-1.spec&nbsp;1&gt;&nbsp;/tmp/out&nbsp;2&gt;&nbsp;/tmp/err&nbsp;&nbsp;<BR>&nbsp;这样完成的&nbsp;rpm&nbsp;档案,於安装时,可以加&nbsp;--prefix&nbsp;参数,使得它&nbsp;<BR>&nbsp;安装至我们希望的其他目录下。&nbsp;<BR>&nbsp;example#&nbsp;rpm&nbsp;-Uvh&nbsp;-v&nbsp;--prefix&nbsp;/root&nbsp;helloworld-1.0-1.i386.rpm&nbsp;<BR>&nbsp;<BR>&nbsp;六、进阶技巧&nbsp;&nbsp;<BR>&nbsp;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-&nbsp;<BR>「模仿」很重要,特别是仿效别人的精典之作,往往可以获得不少经验,&nbsp;<BR>&nbsp;触发许多灵感。SRPM&nbsp;档案则是学习模仿的最佳工具,在下自个儿收集&nbsp;<BR>&nbsp;了超过一千八百个&nbsp;SRPM&nbsp;档案,从别人的&nbsp;spec&nbsp;档案中,确实可以□清&nbsp;<BR>&nbsp;许多盲点。&nbsp;<BR>&nbsp;前面咱们只介绍了两个简单的范例,目的仅在引介&nbsp;RPM&nbsp;的制作流程,&nbsp;<BR>&nbsp;本身并没有什麽难度。其他进阶的技巧,诸如「其他有用的&nbsp;spec&nbsp;标签」&nbsp;<BR>&nbsp;「多重包裹档案的制作」「相依关系」「设定&nbsp;Build&nbsp;Root」「增加&nbsp;PGP&nbsp;<BR>&nbsp;签证功能」「Subpackage&nbsp;的制作」,每个项目都相当精采。充份了解後,&nbsp;<BR>&nbsp;不但可以制作包裹档案,自娱娱人,还可以藉此了解&nbsp;Red&nbsp;Hat&nbsp;Linux&nbsp;<BR>&nbsp;的架构,一兼二顾,摸蛤兼洗裤。&nbsp;<BR>&nbsp;<BR>&nbsp;自制&nbsp;RPM&nbsp;让&nbsp;Linux&nbsp;「个人化」「中文化」的理想,变得更容易且有系统,&nbsp;<BR>&nbsp;希望您能从中收益良多。&nbsp;<BR>&nbsp;--&nbsp;<BR>&nbsp;&quot;The&nbsp;only&nbsp;way&nbsp;you&nbsp;can&nbsp;compete&nbsp;against&nbsp;a&nbsp;monopoly&nbsp;is&nbsp;&nbsp;<BR>&nbsp;&nbsp;to&nbsp;change&nbsp;the&nbsp;rules&nbsp;on&nbsp;which&nbsp;the&nbsp;game&nbsp;is&nbsp;played.&quot;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;---&nbsp;&nbsp;Robert&nbsp;F.&nbsp;Young&nbsp;<BR>--&nbsp;<BR>※Origin:&nbsp;猫空行馆&nbsp;bbs.cs.nccu.edu.tw&nbsp;◆From:&nbsp;ccs.cc.nccu.edu.tw&nbsp;<BR>--&nbsp;<BR>※&nbsp;转载:.笑书亭&nbsp;bbs.zju.ml.org.[FROM:&nbsp;210.32.151.168]&nbsp;<BR>&nbsp;<BR>--&nbsp;<BR>※&nbsp;修改:·linuxrat&nbsp;於&nbsp;Dec&nbsp;30&nbsp;17:01:25&nbsp;修改本文·[FROM:&nbsp;202.112.168.252]&nbsp;<BR>※&nbsp;来源:·BBS&nbsp;水木清华站&nbsp;smth.org·[FROM:&nbsp;162.105.138.50]&nbsp;<BR><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER></BODY></HTML>

⌨️ 快捷键说明

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