如何制作RPM包
1、首先安装工具,rpmbuild可能在rpmdevtools里已经包含#yum install rpmbuild#yum install rpmdevtools
2、执行如下rpmdev-setuptree生成rpmbuild的工作目录#rpmdev-setuptree~/rpmbuild~/rpmbuild/SOURCES #放置打包资源,包括源码打包文件和补丁文件等~/rpmbuild/SPECS #放置SPEC文档~/rpmbuild/BUILD #打包过程中的工作目录~/rpmbuild/RPMS #存放生成的二进制包~/rpmbuild/RPMS/i386 #存放生成的i386结构包~/rpmbuild/SRPMS #存放生成的源码包
3、我们将下载载源码包到SOURCES目录,不需要解压
4、然后再编写SPEC,我理解的就是安装脚本 在SPEC目录下,新建nginx.spec##Example spec file for nginx#Summary: high performance web serverName: nginxVersion: 1.2.1Release: 1.el5.ngxLicense: 2-clause BSD-like licenseGroup: Applications/ServerSource: http://nginx.org/download/nginx-1.2.1.tar.gzURL: http://nginx.org/Distribution: LinuxPackager: zhumaohai <admin@www.centos.bz>%descriptionnginx [engine x] is a HTTP and reverse proxy server, as well asa mail proxy server%preprm -rf $RPM_BUILD_DIR/nginx-1.2.1zcat $RPM_SOURCE_DIR/nginx-1.2.1.tar.gz | tar -xvf -%buildcd nginx-1.2.1./configure --prefix=/usr/local/nginxmake%installcd nginx-1.2.1make install%preunif [ -z "`ps aux | grep nginx | grep -v grep`" ];thenkillall nginx >/dev/nullexit 0fi#文件说明字段,声明多余或者缺少都将可能出错%files#声明/usr/local/nginx将出现在软件包中/usr/local/nginx
5、最后就是构建rpm包,执行#cd ~/rpmbuild/#rpmbuild -ba SPECS/nginx.spec
6、在RPMS即可查看生成的rpm包