📄 00000003.htm
字号:
<HTML><HEAD> <TITLE>BBS水木清华站∶精华区</TITLE></HEAD><BODY><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER>发信人: stable (xixi), 信区: Linux <BR>标 题: [转载]大家来做 RPM <BR>发信站: BBS 水木清华站 (Thu Dec 30 16:51:27 1999) <BR> <BR> <BR> 作者 fuse (保险丝), 信区: UNIX_PALACE <BR> 标题 [转载] [doc] 大家来做 RPM <BR> 时间 笑书亭 (Fri Jul 24 07:23:47 1998), 站内信件 <BR>─────────────────────────────────────── <BR>【 以下文字转载自 Linux 讨论区 】 <BR>【 原文由 <A HREF="mailto:marr.bbs@bbs.cs.nccu.edu.tw">marr.bbs@bbs.cs.nccu.edu.tw</A> 所发表 】 <BR> +--------------+ <BR> | 大家来做 RPM | <BR> +--------------+ Penelope Marr <<A HREF="mailto:marr@nccu.edu.tw>">marr@nccu.edu.tw></A> <BR>○、前言 <BR> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- <BR> <BR> 打造属於自己的作业系统环境,这应该是许多 Linux 玩家的梦想, <BR> 如今,随著 Red Hat Linux 与 RPM 系统渐受大家重视,实现梦想 <BR> 的过程似乎不再那麽痛苦了。「前人种树,後人乘凉」,您是否在 <BR> 乘凉享受之馀,心中也曾升起一股热忱,希望「好东西能和好朋友 <BR> 分享」? 期待本文有机会提供指引功能,透过抛砖引玉的效果,让 <BR> 网路上更多的 Linux 同好,能够一起贡献心力。 <BR> <BR>一、准备工作 <BR>-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- <BR> □ 什麽是 RPM <BR> 如果您当真还不知道,或是不清楚「什麽是 RPM」,很抱歉,您应该 <BR> 另外先做完下列的功课: <BR> 1. 读过 RPM-HOWTO 对於 RPM 的简介部份,中译的 RPM-HOWTO 一文 <BR> 可由 <A HREF="http://www.linux.org.tw/CLDP/RPM-HOWTO.html">http://www.linux.org.tw/CLDP/RPM-HOWTO.html</A> 取得。 <BR> 请先读完前三章。 <BR> 2. 实际安装过 Red Hat Linux,这是提供 RPM 系统的最佳作业平台 <BR> ,并能让您感受整个 RPM 运作的概况。 <BR> <BR> 注:如果您事先已熟悉 Debian Linux 之 dpkg 系统,那麽请放心, <BR> RPM 应该会比 dpkg 来得容易,能够熟悉 Debian Linux 的朋友,相信 <BR> 早已完全涵盖上述的基本功夫。 <BR> <BR> □ 带著您的武器 <BR> 我们准备上路了,因此您必须检查下列的「随身武器」,要是缺了任何 <BR> 一项,很抱歉,请务必补齐: <BR> 1. 至少一个顺手的编辑器,写程式用的。 <BR> 2. 熟悉 bash/ksh script 语法,其重要性真的难以言喻。 <BR> 3. 熟悉诸如 grep、 sed、 awk、 install、 ldconfig 等工具程式 <BR> 的使用,多多益善。 <BR> 4. 熟悉 rpm 程式之四大基本功能:install、 upgrade、 query、 verify <BR> 5. 基本 C 语言编译技巧,至少包括 Makefile 写作概念,diff、 <BR> patch 的使用。 <BR> <BR> 注:究竟该具备多少 C 语言的相关技巧,这点我也说不上来,严格 <BR> 地讲,在下也是程式白痴一个。所以,视情况而定吧。如果您希望 <BR> 制作难度高的包裹档案,那麽高超的编译除错技巧,势必需要,如果 <BR> 原始码的作者,早就写好一份完美的 Makefile,那麽直接 make、 <BR> make install,倒也全不费功夫。或许有人专精 Perl、Python、 <BR> Tk/Tcl、Java 之类的语言,这原本也是好事,特别是在制作这类与 <BR>「另类语言」相关的包裹档案时,您应该会倍感亲切。不过,再次 <BR> 强调,shell script 是 RPM 的基本语言,而 C 则是 RPM 的常态语言, <BR> 像 Perl、Python、Tk/Tcl、Java 虽然也能解决几乎所有问题,但考虑 <BR> 可携性与程式体积,您不可不三思啊。而且,别小看 grep、sed、awk <BR> 这些小型工具,它们与 bash 搭配的威力,应该可以满足所有 RPM 制作 <BR> 时的需要。 <BR> <BR>二、参考资料 <BR>-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- <BR> 或许 RPM-HOWTO 应该是第一份需要参考的文件,不过在下建议「目的 <BR> 仅在获得基本概念」,或者说,您若能从头读完本文件,八成也能够 <BR> 了解 RPM-HOWTO 的内容,因为我已经尝试在本文中,想像「以一种您能 <BR> 理解吸教收的方式」来重述 RPM-HOWTO 的要点。当然,您也可以抱怨 <BR> 中文版 RPM-HOWTO 译得太糟糕,致使聪明如您有看没有懂。这样的说法, <BR> 在下确实能够体会,因为 RPM-HOWTO 也是由在下执笔中译,老实说, <BR> 当初译完後的我,也不敢妄称了解 RPM。 <BR> Maximum RPM 则是在下力荐的「宝典」,这应该是现存最详尽完整的 <BR> RPM 专书,深入浅出带领读者了解 RPM 系统。该书原本是 Red Hat <BR> 公司的出版品,由 Ed Bailey 所撰写,热心慷慨的他,额外在网路上 <BR> 放了 PostScript 档供人下载,且让我们献上最高的敬意吧。整份 <BR> PostScript 档若列印出来,共计四百馀页,有心专研者,可以考虑印下, <BR> 不然,则可以用 ghostscript 线上阅读。如果您想直接购买书籍, <BR> 可以前往 <A HREF="http://www.redhat.com/">http://www.redhat.com/</A> 查询。 <BR> <A HREF="http://www.rpm.org/">http://www.rpm.org/</A> 与 RPM 之 mailing list,内行的都知道 :-) <BR> <BR> 三、制作 RPM 的流程大纲 <BR> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- <BR> 建造 RPM 包裹档案的基本步骤如下: <BR> 1. 确定您的 /etc/rpmrc 已经符合系统所需,完成设定。 <BR> 2. 取回所要建造的 source code。 <BR> 3. 进行所需的 source 档案 patch 动作, 以使得我们能顺利地 <BR> build 整个程式。 <BR> 4. 为包裹档案撰写一份 spec 档案。 <BR> 5. 确认每个档案都在正确的目录位置。 <BR> 6. 使用 RPM 来 build 整个包裹档案。 <BR> <BR> □ /etc/rpmrc 档案 <BR> RPM 系统的控制档,system-wide 的设定档是 /usr/lib/rpmrc,而 <BR> customized 的设定档则是 /etc/rpmrc。一般而言,/usr/lib/rpmrc <BR> 档案的内容完全无须去更动,如果有任何新设定,请写在 /etc/rpmrc <BR> 里头,因为它会「盖过」 /usr/lib/rpmrc 的设定值。下列是我的 <BR> /etc/rpmrc 档案范例: <BR> #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-# <BR> # /etc/rpmrc # <BR> # # <BR> # Local customizations are made to override /usr/lib/rpmrc. # <BR> #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-# <BR> distribution: Manhattan <BR> require_distribution: 1 <BR> vendor: twLUG <BR> require_vendor: 1 <BR> packager: Penelope Marr <<A HREF="mailto:marr@nccu.edu.tw>">marr@nccu.edu.tw></A> <BR> <BR> □ 其他额外的重要资讯 <BR> 有关 RPM 包裹档案的制作流程,事实上还有许多重要的细节,必须 <BR> 牢记在心,这部份请先行参考 RPM-HOWTO 里 [Building RPMs] 说明。 <BR> <BR> 四、一个最简单的范例 <BR>-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- <BR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -