如何将源码包转换成rpm包

1)安装rpm-build软件包

[root@proxy ~]# yum -y install rpm-build

2)生成rpmbuild目录结构

[root@proxy ~]# rpmbuild -ba nginx.spec

//制作rpm包,但是没有配置文件会报错,报错也需要敲,会产生所需的目录

3)准备工作,将源码软件复制到SOURCES目录

[root@proxy ~]# cp  lnmp_soft/nginx-1.12.2.tar.gz /root/rpmbuild/SOURCES/

4)创建并修改SPEC配置文件

[root@proxy ~]# vim /root/rpmbuild/SPECS/nginx.spec 
Name:nginx                                        #源码包软件名称
Version:1.12.2                                    #源码包软件的版本号
Release:    10                                        #制作的RPM包版本号
Summary: Nginx is a web server software.            #RPM软件的概述    
License:GPL                                        #软件的协议
URL:    www.test.com                                    #网址
Source0:nginx-1.12.2.tar.gz                        #源码包文件的全称
#BuildRequires:                                    #制作RPM时的依赖关系
#Requires:                                        #安装RPM时的依赖关系
%description
nginx [engine x] is an HTTP and reverse proxy server.    #软件的详细描述
%post
useradd nginx                               #非必需操作:安装后脚本(创建账户)
%prep
%setup -q                                #自动解压源码包,并cd进入目录
%build
./configure
make %{?_smp_mflags}
%install
make install DESTDIR=%{buildroot}
%files
%doc
/usr/local/nginx/*                    #对哪些文件与目录打包
%changelog

使用配置文件创建RPM包:
1)安装依赖软件包

[root@proxy ~]# yum -y install gcc make pcre-devel openssl-devel

2)rpmbuild创建RPM软件包

[root@proxy ~]# rpmbuild -ba rpmbuild/SPECS/nginx.spec
[root@proxy ~]# ls /root/rpmbuild/RPMS/x86_64/nginx-1.12.2-10.x86_64.rpm

[root@proxy ~]# ls rpmbuild/RPMS/x86_64/                                 
//查看结果看到nginx-1.12.2-10.x86_64.rpm则成功

安装软件测试:
[root@proxy ~]# yum install /root/rpmbuild/RPMS/x86_64/nginx-1.12.2-10.x86_64.rpm 
[root@proxy ~]# rpm -qa |grep nginx
[root@proxy ~]# ls /usr/local/nginx/

你可能感兴趣的:(如何将源码包转换成rpm包)