📄 153.html
字号:
4 # 修改时间: 2001.10.19<br>
5<br>
6 Name: lze<br>
7 Version: 6.0<br>
8 Release: 2<br>
9 Summary: 小赵全屏幕中英文多窗口多功能编辑器(LINUX/UNIX系统适用)<br>
10 Group: Applications/Editors<br>
11 License: Share<br>
12 Vendor: 纵横软件制作中心<br>
13 Packager: 雨亦奇(zhsoft@371.net)<br>
14 Source: http://zhsoft.myetang.com/lze-6.0-2.src.tgz<br>
15 Prefix: /usr<br>
16 Requires: /bin/sh<br>
17 Provides: lze-edit<br>
18<br>
19 %description<br>
20 小赵编辑器,是为使用SCO UNIX,LINUX多用户系统的广大用户专门设计的全屏幕多窗<br>
21 口中英文多功能编辑器。<br>
22 它主要有以下十大特点:1.全屏幕菜单操作。2.显示方式多样。3.块操作丰富。4.十<br>
23 字制表功能强大。5.多窗口操作灵活自如。6.文件操作功能齐全。7.解释输出功能独具特<br>
24 色。8.自带中文输入法(增强五笔和增强拼音),实用方便。9.十六进制编辑功能,如虎<br>
25 添翼。10.即时翻译,按到即译。<br>
26 总之,小赵编辑器会成为您在UNIX,LINUX系统上编制程序和书写一般性文稿的好帮手。<br>
27 它将在工作中助您一臂之力,轻松上阵,游刃有余!<br>
28<br>
29 %prep<br>
30 echo "预处理脚本程序(prep)开始执行"<br>
31 %setup<br>
32<br>
33 %build<br>
34 echo "编译连接脚本程序(build)开始执行"<br>
35 make<br>
36<br>
37 %install<br>
38 echo "安装脚本程序(install)开始执行"<br>
39 make install<br>
40<br>
41 %clean<br>
42 echo "建包结束后清理脚本程序(clean)开始执行"<br>
43<br>
44 %pre<br>
45 echo "安装前执行脚本程序(pre)开始执行"<br>
46<br>
47 %post<br>
48 echo "安装后执行脚本程序(post)开始执行"<br>
49<br>
50 %preun<br>
51 echo "卸载前执行脚本程序(preun)开始执行"<br>
52<br>
53 %postun<br>
54 echo "卸载后执行脚本程序(postun)开始执行"<br>
55<br>
56 %veryfiscript<br>
57 echo "软件包校验脚本程序(verifyscript)开始执行"<br>
58<br>
59 %triggerin -- xiuwu<br>
60 echo "软件包安装时触发脚本程序(triggerin)开始执行"<br>
61<br>
62 %triggerun -- yuntaishan < 2.0<br>
63 echo "软件包卸载前触发脚本程序(triggerun)开始执行"<br>
64<br>
65 %triggerpostun -- dapubu<br>
66 echo "软件包卸载后触发脚本程序(triggerpostun)开始执行"<br>
67<br>
68 %files<br>
69 %defattr (-,root,root)<br>
70 %config /etc/funkey.def<br>
71 %config /etc/inputme.def<br>
72 %doc /usr/doc/lze-6.0/README<br>
73 %doc /usr/doc/lze-6.0/LICENSE<br>
74 /usr/bin/lze<br>
75 /usr/bin/lzeime.py<br>
76 /usr/bin/lzeime.wb<br>
77 /etc/wbzc.dat<br>
78<br>
79 %changelog<br>
80 * Tue Aug 18 1998 雨亦奇<br>
81 - 内置拼音,五笔输入法<br>
82 * Fri May 01 1998 雨亦奇<br>
83 - 增加多窗口操作<br>
84 * Mon Mar 24 1997 雨亦奇<br>
85 - 增加块操作命令<br>
86<br>
<br>
该描述文件包括以下几方面的内容:<br>
<br>
一、注释行<br>
见第1-4行。<br>
它以#号开头,起注解作用,可帮助用户理解所写的内容,但对软件包的生成不起任何作用。<br>
此文件中,注释行集中在文件首部。实际上,它可位于描述文件的任何位置。<br>
<br>
二、文件头<br>
见第6-17行。<br>
文件头描述软件包的基本信息,它包含若干个域,其中有必选的域,也有可选的域。一个域占用一行,其描述格式为:<br>
域名 : 域值<br>
注意: 域名不分大小写,并且域值不能为空。<br>
文件头必选域有以下六个:<br>
<br>
1. Name :<br>
此域定义软件名。<br>
<br>
2. Version :<br>
此域定义版本号。仅当软件较以前有较大改变时才增加版本号。注: 版本号中不能含减号(-)字符。<br>
<br>
3. Release :<br>
此域定义释出号。若软件较以前改变较小,则仅增加释出号,不改变版本号。注: 释出号中亦不能含减号(-)字符。<br>
RPM利用上述的Name(软件名),Version(版本号),Release(释出号)及体系号来命名软件包,如本例输出的包裹文件名为lze-6.0-2.i386.rpm。<br>
<br>
4. Summary :<br>
此域定义软件包简介,为一句话说明。<br>
<br>
5. Group :<br>
此域定义软件所属类别,详见<<精通RPM之五--查询篇>>,本例的Applications/Editors表示本软件属"应用/编辑器"类。<br>
<br>
6. License :<br>
此域定义软件适用的许可证或版权规则。该域也可用Copyright(版权)来定义,二者同意。许可证具体有: GPL(通用公共许可证,自由软件适用),BSD,MIT,Public Domain(公共域),Distributable(贡献),Commercial(商业),Share(共享)等。<br>
<br>
文件头可选的域包括如下几类:<br>
1. 基本信息<br>
<br>
1.1 Vendor :<br>
此域定义软件的供应商(销售商)。<br>
<br>
1.2 Distribution :<br>
此域定义软件所属的发行版,这是软件包制作者自己的分类。通常,一个发行版由若干个软件包构成。如我想做一个名为“熊猫'95”的发行版,则其中每个软件包(如竹叶95)的描述文件都应有这么一行:<br>
Distribution : 熊猫'95<br>
<br>
1.3 Icon :<br>
此域指定软件包所用的图标文件名。此文件为GIF或XPM格式,必须存放在RPM的%_sourcedir<br>
(源码目录)宏所指示目录下,默认为/usr/src/dist/SOURCES。RPM本身并不使用图标,但它<br>
将图标文件内容存贮到包裹文件中,安装时亦存贮到RPM数据库中。此图标可被图形界面的<br>
RPM包管理工具使用,用以改善界面效果,增加可视性。如下例指示软件包使用panda.xpm作<br>
为图标:<br>
Icon : panda.xpm<br>
<br>
1.4 Packager :<br>
此域定义打包者,亦即建立此软件包的人或公司。书写格式是:<br>
打包者的名字 <电子信箱或相关网页><br>
请参考描述文件第13行。<br>
<br>
1.5 Serial :<br>
此域定义软件序列号,也可使用域名Epoch。软件序列号为一整数,由打包者指定,它应随着版本号的增加而不断增加,并且始终保持数值的唯一。软件序列号可被用来说明软件包之间的依赖关系。下例指定软件包序列号为4:<br>
Serial : 4<br>
或用:<br>
Epoch : 4<br>
<br>
1.6 URL :<br>
此域定义包含打包软件有关信息的网页地址。如:<br>
URL : http://devplanet.fastethernet.net/gxedit.html<br>
<br>
2. 依赖相关<br>
依赖是RPM用来描述软件包之间关系的。一个软件包依赖的东西RPM称作功能,它可以是真实存在的软件包,也可以是虚拟的软件包(虚包)。虚包没有版本号。<br>
依赖相关的域有:<br>
<br>
2.1 Provides :<br>
此域定义软件包提供的功能,可重复多行。其描述格式为:<br>
Provides : 功能1 [,功能2] ...<br>
<br>
注: []所括为可选项,多个功能之间以逗号或空格分隔。<br>
软件包所提供的功能一般是以虚包形式存在的共享库。当有多个软件包均提供相同的服务时,常用虚包来表示其服务。如,一个邮件客户端软件允许用户使用不同的看信方式(文本形式,HTML形式等),可以要求任何一个看信程序必须提供mail-reader虚包。这样,看信程序的描述文件应有这么一行:<br>
Provides : mail-reader<br>
如此它才能被邮件客户端使用。<br>
<br>
2.2 Requires :<br>
此域定义软件包所需的功能,可重复多行。其描述格式为:<br>
Requires : 功能1 [比较符1 [序列号1:]版本号1[-释出号1]] [,功能2 [比较符2 [序列号2:]版本号2[-释出号2]]] ...<br>
<br>
其中: * []所括为可选项;<br>
* 比较符可使用<(小于),>(大于),=(等于),>=(大于等于)或<=(小于等于);<br>
* 序列号不选时,RPM默认为0;<br>
* 功能之间的逗号可选,也可使用空格进行分隔。<br>
例子:Requires: aaa, bbb >= 3.0, ccc < 2:5.0-1<br>
注: 本例定义生成的包在安装时需要系统有如下功能:<br>
(1) aaa(系统中已安装aaa包,或者已安装软件包中有软件包提供aaa虚包);<br>
(2) bbb包已安装且版本要求大于等于3.0;<br>
(3) ccc包已安装且版本要求小于序列号为2,版本号为5.0且释出号为1。<br>
RPM在进行版本比较时,执行比较的顺序是; 先版本号,再释出号,最后比较序列号。通过比较,确定哪个版本较新,哪个版本较老。<br>
<br>
2.3 Conflicts :<br>
此域定义有哪些功能与本软件包相冲突(不能共存)。此域亦可在描述文件中书写多次。其描述格式形同Requires域,为:<br>
Conflicts : 功能1 [比较符1 [序列号1:]版本号1[-释出号1]] [,功能2 [比较符2 [序列号2:]版本号2[-释出号2]]] ...<br>
<br>
其中: * []所括为可选项;<br>
* 比较符可使用<(小于),>(大于),=(等于),>=(大于等于)或<=(小于等于);<br>
* 序列号不选时,RPM默认为0;<br>
* 功能之间的逗号可选,也可使用空格进行分隔。<br>
举个例子:<br>
Conflicts : xxx=1:2.0 yyy>=3.0<br>
注: 本例阐明生成的包冲突的功能有:<br>
(1) 当系统中xxx包版本等于序列号为1且版本号为2.0时;(2) 当系统中yyy包版本大于等于3.0时。<br>
*** 依赖关系的自动实现 ***<br>
一般情况下,当RPM建立一个软件包时,它要执行/usr/lib/rpm目录下的两个小程序。一个是find-requires,用于查找软件包所需的共享库,这些库将以虚包的形式加入到该软件包所需的功能(Requires)之中。另一个是find-provides,它用于查找软件包所提供的共享库,这些库将以虚包的形式加入到该软件包所提供的功能(Provides)之中。这两个程序都是SHELL程序,代码量虽小,但确实帮了软件包制作者一个大忙--不必劳心费神地自己写这样的依赖关系了,因为程序均自动完成了。<br>
下面三个域用于指示RPM是否执行这两个程序。<br>
<br>
2.4 Autoreq :<br>
此域用于指示RPM是否自动查找软件所需的共享库。仅当域值为no或0时,RPM不执行find-requires程序,否则均执行该程序。<br>
<br>
2.5 Autoprov :<br>
此域用于指示RPM是否自动查找软件提供的共享库。仅当域值为no或0时,RPM不执行find-provides程序,否则均执行该程序。<br>
<br>
2.6 Autoreqprov :<br>
此域用于指示RPM是否自动查找软件所需的共享库与其提供的共享库。仅当域值为no<br>
或0时,RPM不执行find-requires与find-provides两个程序。此域相当于同时设定Autoreq<br>
与Autoprov域值为指定之值。<br>
注: 上述三个域在描述文件中,它们之间因为顺序的不同而结果会有所不同,一般以最后一个为准。如:<br>
Autoreq : yes<br>
Autoreqprov : no<br>
Autoprov : yes<br>
<br>
注: 本例虽然第一行允许执行find-requires,但第二行又不允许find-requires与find-provides两个程序运行,而第三行允许find-provides运行,所以依照执行顺序,结果为不允许执行find-requires,而允许执行find-provides。<br>
又如:<br>
Autoreq : no<br>
Autoreqprov : yes<br>
Autoprov : no<br>
<br>
注: 本例的结果为允许执行find-requires,而不允许执行find-provides。<br>
<br>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -