RPM是Redhat Package Manage的缩写。透过RPM的管理,使用者可以把Source
Code包装成一种Source和Binary的档案形式。利用它,我们可以用Binary的档案进行安装,用 Source
的档案形式重新整理包装。许多Linux爱好者对安装RPM包比较熟悉,但对如何在Linux下制作RPM包不甚了解,因此,我将通过实例,讲解如何在Linux下制作RPM包。
1. 最初要求
为了创建RPM,你需要RPM要编译的源代码、一个rpmrc文件(设置一些RPM的缺省值并控制它的行为),以及一个spec文件(控制包的建立过程)。这里假定已有其它的开发环境(gcc、make、install、vi等),而且你的源代码已经编译成功。
2. 制作流程
1)确定/etc/rpmrc(也可能是/usr/lib/rpm/rpmrc)已经正确设定。rpmrc文件控制几乎所有RPM的行为。如果你
想重载一个或多个全局设置,可以在~/.rpmrc文件中包含你的定制。可以使用rpm--showrc来显示RPM的当前设置。大多数情况下,
rpmrc 文件的设置不需要改变。
2)取回所建造的源代码并放入正确的目录中。
3)编写spec文件。
4)使用rpm
-ba 来构造整个程式套件。
3.应用举例
现在以Lynx实用程序来介绍构造RPM包的整个过程。Lynx是在文本方式下的Web浏览器,可以从ftp://www.slcc.edu/pub/lynx/取得。
1)得到lynx源代码。
2)lynx-2.8.spec文件的详细编写方法略。
3)使用RPM来构造包。
按照rpmrc文件的缺省设置,应该把lynx-2.8.spec文件放入SPECS/目录下,然后执行:
rpm -ba
lynx-2.8.spec
其中-b 表示prep、compile、install,并build出一份binary RPM包。-a
表示执行所有的build动作,即还要build 出一份source code RPM包。
如果一切顺利的话,可以在RPMS/目录下找到lynx-2.8-4.i386.rpm文件。可以执行:
rpm -qpl
lynx-2.8-4.i386.rpm
来观察RPM 包中是否包含了要求的所有文件。
为了测试它的正确性,可以拷贝此文件到另一台机器上,并执行:
rpm -ivh lynx-2.8-4.i386.rpm
进行安装测试。
一旦测试成功,就可以上载你的大作,享受成功的喜悦。
小结
制作RPM包需要开发人员做很多工作。比如不仅要懂得c/c++编程,而且还要能熟练掌握像make、autoconf、diff、
patch、tar、install等工具的使用并能编写spec文件。但从长远来看,应用RPM,在软件包的维护和方便性方面使得开发者受益。
原文:http://www.host01.com/article/server/00070002/0542417260388231.htm
国内最棒的Google Android技术社区(eoeandroid),欢迎访问!《银河系列原创教程》发布《Java Web开发速学宝典》出版,欢迎定购
分享到:
相关推荐
主要介绍了Linux下RPM打包制作的详细流程,并分享了相关实例代码,一起学习下。
Linux rpm包制作.docx
linux下制作安装rpm包的方法.docx
通过Apache2.4.37的源码包制作的rpm包,官方源码包发布日期 为:2018-10-23;
自行制作rpm包,该文档描述了rpm制作指南,读后可顺利自行制作rpm包,里面有例子。
使用openssh7.7 源码制作的rpm包 centos6.5 离线 升级 openssh5.4 到openssh 7.7 ,无需安装打包依赖,使用 rpm 命令直接安装, 软件包 分为三个rpm 包 ,需要全部安装 升级详细说明:...
1.ppt形式 2.rpm知识介绍 3.rpm打包java举例
适用于centos x86 系统 里面包含源码文件、rpm包和操作过程命令。 rpm包需要升级openssl,openssh才能正常启动。
通过RPM方式安装vsftpd; 第一步:下载vsftpd的RPM包; 第二步:启动并在"standalone"模式下进行测试; 第三步:为inetd/xinetd操作进行配置;
Centos7 openssh9.0 rpm包与升级脚本
openssh 9.6p1 for bclinux8.6,龙蜥8.6 rpm升级包 升级方法 rpm -Uvh *.rpm
内含openssh9.0p1版的所有rpm文件
openssh又更新了,加上重保期间,为了方便给一堆主机升级,做了个RPM包,方便升级。 安装及设置方法在附件中。 openssh-9.0p1 rpm 升级包,适用于RHEL6/CENTOS6。
1.用于制作RPM包 2.安装运行环境支持CentOS8及以上 3.支持桌面图形化界面、没有桌面的命令行方式打包 4.支持文件打包、文件夹打包、源码包打包 MD5: FA72BD18F1FB5107659F3C88CA19266E SHA1: 2DF82CC25253EA5F1FCBD2...
按照下列顺序安装即可 kernel-headers-2.6.18-53.el5.i386.rpm glibc-headers-2.5-18.i386.rpm glibc-devel-2.5-18.i386.rpm libgomp-4.1.2-14.el5.i386.rpm gcc-4.1.2-14.el5.i386.rpm
aix 5.2的bash rpm包 可以用linux bash
libreoffice在arm架构下官方进支持win、mac系统,而linux系统下仅支持x86 x86_64的包,而国产信创操作系统大多数都是arm环境,使用源码安装很不方便,编译需要接近2个小时,因此rpm包只需要编译制作一次,为后续的...
Linux/Unix编程中的rpm包制作,优秀推荐,易学易懂
openssh8.4 rpm包,一键升级openssh版本,...执行期间警告remove failed: No such file or directory可以忽略,这是因为在制作rpm包的后脚本中已经删除了该文件导致 完成后ssh -V可查看openssh版本是否已经执行成功。
旧版本的openssh有很多漏洞,源码编译安装太麻烦,制作了这些包分享给有需要的人