Linux 版 (精华区)

发信人: netiscpu (还没想好), 信区: Linux
标  题: 怎样生成一个rpm文件(1)
发信站: 紫 丁 香 (Sun Aug 23 17:06:32 1998), 转信

【 以下文字转载自 cnlinux 讨论区 】
【 原文由 Lark_Wang@bbs.ustc.edu.cn 所发表 】
> ==> Yu_Di(dy)                                说道: 
>  请提供一个spec文件的例子,谢谢! 
以下我对一个 spec 文件进行解释:

这个例子是对编译好的程序打包 , 目标是 x11amp-0.7-1.rpm 
目标通常是 name-version-release.arch.rpm

--------------------------------------------

Name: x11amp               # 包的名字 
Version: 0.7               # 版本 
Release: 1                 # 
Copyright: Distributable   # 可以是 GPL , BSD 或者任何字符串
Group: Applications/Sound  # 这是在 glint 里看的的
Source: x11amp-0.7-1.tgz   # URL , 如果不是 URL , 就放在
                           # /usr/src/redhat/SOURCES 里
                           # 记住 , 它展开后应该是有 x11amp-0.7
                           # 这个目录 , 即 name-version
Summary: Pretty MP3 Player with GUI  # 简明的说明
BuildRoot: /usr/src/redhat/BUILD/x11amp-%{PACKAGE_VERSION}-root
                           # BuildRoot 指明在哪儿编译

%description               # 详细说明
x11amp is a pretty MP3 player with WinAMP like GUI . It has very low
CPU usage ( the lowest in all MP3 players for linux ). A nice feature
is that it supports WinAMP skins . Till now , x11amp doesn't support
stream playback .

%prep                      # 一般空着
%setup                     # 一般空着

%build                     # 编译部分 ,对这个包来说 , 要空着

%install                   # 安装部分 , 这个安装是对于打 rpm 包而言
                           # 注意我把它安装到
                           # /usr/src/redhat/BUILD/x11amp-0.7-root 里
rm -rf $RPM_BUILD_ROOT     # $RPM_BUILD_ROOT 就是 BuildRoot
install -d $RPM_BUILD_ROOT/usr/man/man1
install -d $RPM_BUILD_ROOT/usr/X11R6/bin
install -d $RPM_BUILD_ROOT/usr/sbin

install -m 755 x11amp    $RPM_BUILD_ROOT/usr/X11R6/bin
install -m 755 x11amp.suidconf $RPM_BUILD_ROOT/usr/sbin
install -m 644 x11amp.1x.gz $RPM_BUILD_ROOT/usr/man/man1

%clean             #  clean
rm -rf $RPM_BUILD_ROOT

%post              # 在 rpm 安装到系统中后要做的事 , 通常是
                   #ldconfig

%postun            # uninstall 后要做的事 , 通常也是 ldconfig

%files             # 指出在 BuildRoot 中那些文件要放到 rpm 包中
%doc README.gz SECURITY  # doc 要单独放到 /usr/doc/name-version 中
/usr/X11R6/bin/x11amp
/usr/sbin/x11amp.suidconf
/usr/man/man1/x11amp.1x.gz

---------------------------------------------
有一些信息我没有用上 , 如

Packager: Wang Jian <lark@linux.ustc.edu.cn>
Requires: XFree86-libs
Distribution: Mahattan
Vendor:   Lark :-)

你可以安装一个 gcc 的 src.rpm 然后看 spec , 看怎样用一个 spec 
生成多个包 .

--
※ 来源: 中国科大BBS站 [bbs.ustc.edu.cn]
--
※ 转载:.紫 丁 香 bbs.hit.edu.cn.[FROM: mtlab.hit.edu.cn]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.308毫秒