当前位置:   article > 正文

详解封装源码包成RPM包_打包rpm包对源代码包要求

打包rpm包对源代码包要求

源码编译安装是最常用安装软件方式,可是面对工作量巨大时候就需要我们的RPM包上场了,统一的模块,一键安装。在面对一定数量的服务器上,RPM就可以为我们节省大量的时间。
RPM可以在网上下载,但是当我们需要用到特殊模块时,这些网上的RPM就显得那么的苍白无力了。所以自行封装打包成了一和需求。现在就介绍如何封装打包。

打包流程

1)准备源码软件
2)安装rpm-build
3)编写编译配置文件
4)编译RPM包

开始

1.安装rpm-build软件包

rpm-bulid 打包所用的工具

[root@W1 root]# yum install rpm-build
  • 1

2.生成rpmbuild目录结构

[root@W1 root]# rpmbuild -ba nginx.spec
错误:stat /root/nginx.spec 失败:没有那个文件或目录
  • 1
  • 2

会报错,不过没问题 需要的只是生成的目录rombuild

[root@W1 rpmbuild]# pwd
/root/rpmbuild

[root@W1 rpmbuild]# ls
BUILD  BUILDROOT  RPMS  SOURCES  SPECS  SRPMS
  • 1
  • 2
  • 3
  • 4
  • 5

RPMS(做好后的成品放置区)
SOURCES(放置源码包)
SPECS(配置文件)

  • -

3.将源码软件复制到SOURCES目录

[root@W1 rpmbuild]# cp nginx-1.8.0.tar.gz /root/rpmbuild/SOURCES/
  • 1

记得是源码包

4.创建并修改spec配置文件

[root@W1 rpmbuild]# vim /root/rpmbuild/SPECS/nginx.spec
文件后缀必须是spec,格式嘛
如何修改参考内德给的图

这里写图片描述
!!标注的地方不能随便该
这是nginx修改的参考

[root@Web rpmbuild]# cat SPECS/nginx.spec 
Name:nginx  
Version:1.8.0   
Release:1.rhel7
Summary:The is a Web Server,to nginx

#Group: 
License:GPL 
URL:www.Nedved.cn   
Source0:nginx-1.8.0.tar.gz  

BuildRequires:  gcc pcre openssl-devel
#Requires:  

%description
This is a Web server nginx 

%prep
%setup -q


%build
./configure --with-http_ssl_module --with-http_stub_status_module
make %{?_smp_mflags}


%install
make install DESTDIR=%{buildroot}


%files
%doc
/usr/local/nginx/*


%changelog
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36

到这里就基本上打包完成了

5.使用配置文件创建RPM包

1)安装依赖软件包

[root@W1 rpmbuild]# yum install gcc pcre openssl-devel -y
  • 1

2)rpmbuild创建RPM软件包

 [root@W1 rpmbuild]# rpmbuild -ba SPECS/nginx.spec
  • 1
[root@W1 rpmbuild]# ls RPMS/x86_64/
nginx-1.8.0-1.rhel7.x86_64.rpm  nginx-debuginfo-1.8.0-1.rhel7.x86_64.rpm
  • 1
  • 2

创建RPM软件包后在查看RPMS就能看到封装好的包了

6.测试RPM包是否可使用

rpm -qpi RPMS/x86_64/nginx-1.8.0-1.rhel7.x86_64.rpm //查看封装信息
rpm -qpl RPMS/x86_64/nginx-1.8.0-1.rhel7.x86_64.rpm //查看安装路径
rpm -ivh RPMS/x86_64/nginx-1.8.0-1.rhel7.x86_64.rpm //装包
rpm -qa |grep nginx //查看是否安装

OK到这里就大功告成了。
最后就总结下:
1.准备封装工具
2.改安装配置文件,在里面添加所需要的模块,附加一些安装信息。
3.然后就是测试了

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/469089
推荐阅读
相关标签
  

闽ICP备14008679号