1. 建立工作路径

mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}

2. 下载Nginx源码

cd ~/rpmbuild/SOURCES
wget http://nginx.org/download/nginx-1.20.1.tar.gz

3. 安装依赖、编译和打包工具

yum install -y gcc rpm-build pcre-devel pcre zlib zlib-devel

4. 编写SPEC文件

cd ~/rpmbuild/SPECS
vim nginx_build.spec
# 软件名
Name:           nginx
# 版本号
Version:        1.20.1
# 发布编号
Release:        1%{?dist}
# 软件说明
Summary(zh_CN): 这是nginx项目
# 软件包的版权协议
License:        GPLv3+URL:            http://nginx.org/download/
Source0:        nginx-1.20.1.tar.gz# 编译需要的依赖
BuildRequires: gcc
# 本软件需要的依赖
Requires: pcre-devel zlib-devel%description -l zh_CN
这个是一个nginx项目练手项目,进行nginx打包等操作。%prep
%setup -q# 编译阶段执行的命令
%build
./configure
make# 安装阶段执行的命令
%install
rm -rf %{buildroot}/*
make install DESTDIR=%{buildroot}# 安装后执行的命令
%post
useradd nginx -M -s /sbin/nologin# 卸载前执行的命令
%preun
userdel -r nginx# 将所需要打包的文件都存放到这边中;-f %{name}.lang 加上后的意思为声明找到的文件
%files
%{_prefix}/local/*# 软件更新说明
%changelog

5.检查SPEC文件(可略)

rpmlint nginx_build.spec

6.打包

centos7以及下命令:

cd ~/rpmbuild/SPECS
rpmbuild -ba nginx_build.spec

centos8命令:

cd ~/rpmbuild/SPECS
rpmbuild -ba nginx_build.spec --nodebuginfo

Nginx(SPEC文件打包)相关推荐

  1. pythoninstaller打包多个py 文件_Pyinstaller通过spec文件打包py程序(多个py脚本)

    Pyinstaller pyinstaller是python的一个第三方模块,使用它可以将python程序打包为可执行文件,实现打包后的程序在没有python环境的机器上也可以运行.pyinstall ...

  2. Redis(SPEC文件打包)

    1. 建立工作路径 mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS} 2. 下载Redis源码 cd ~/rpmbuild/SOURCES wg ...

  3. 提取原rpm包里的SPEC文件及重新打包

    一.概要 目的是要修改原rsyslog rpm包的systemd rsyslog.service文件,添加一行"ExecStartPre=/bin/bash -c "/usr/bi ...

  4. rpm打包sh调用shell_RPM包rpmbuild SPEC文件深度说明 【装载】

    转载地址[请查看作者原文] http://hlee.iteye.com/blog/343499 http://laoguang.blog.51cto.com/6013350/1103628 关键字 s ...

  5. RPM打包过程及spec文件解释

    随着Linux风靡全球,越来越多的开发者喜欢采用RPM格式来发布自己的软件包,大多数的公司文件服务器会要求项目的资材作成rpm包.那么RPM软件包是怎样制作的呢? 这篇文章就带大家了解一下RPM包作成 ...

  6. RPM打包与SPEC文件

    制作RPM软件包并不是一件复杂的工作,其中的关键在于编写SPEC软件包描述文件.要想制作一个rpm软件包就必须写一个软件包描述文件(SPEC). 这个文件中包含了软件包的诸多信息,如软件包的名字.版本 ...

  7. RPM包制作之Spec文件详解

    看这篇文章的人基本都有一个想法,就是:"劳资不想用YUM的安装!不是版本太低就是文件分布太野路子",此时我们需要自己订制软件包的需求,我们会把一些源码包按照我们的需求来做成rpm包 ...

  8. linux rqm包制作 spec文件详解

    看这篇文章的人基本都有一个想法,就是:"不想用YUM的安装!不是版本太低就是文件分布太野路子",此时我们需要自己订制软件包的需求,我们会把一些源码包按照我们的需求来做成rpm包,其 ...

  9. linux安装spec编译器,RPM包制作之Spec文件参数详解

    看这篇文章的人基本都有一个想法,就是:"劳资不想用YUM的安装!不是版本太低就是文件分布太野路子",此时我们需要自己订制软件包的需求,我们会把一些源码包按照我们的需求来做成rpm包 ...

最新文章

  1. VMware 虚拟化编程(15) — VMware 虚拟机的恢复方案设计
  2. Spring Cloud Contract 契约测试实践
  3. BBC News 2012-02-07
  4. 《系统集成项目管理工程师》必背100个知识点-22实施整体变更ITTO
  5. windown下linux子系统的安装和卸载
  6. java编译命令 Linux,通过命令行在linux中编译Java类
  7. 20150728月度会议
  8. vim 中的 quickfix 指令
  9. 【干货分享】前端面试知识点锦集03(JavaScript篇)——附答案
  10. pdf在线翻译_如何免费快速地翻译pdf英文文档,并保留很好的格式?
  11. scara机器人dh参数表_两分钟带你了解机器人标定的因素
  12. 爱奇艺首届“黑客马拉松“落幕 极客变身“大娱乐家”
  13. 查看邮箱号是否存在_腾讯企业邮箱--新版本
  14. PE格式详细讲解5 - 系统篇05|解密系列
  15. Centos中源码安装mysql
  16. 高效学习工作方法PDCA让你变成心中有梦眼里有光的幸运儿
  17. Java的Exception异常机制(一)
  18. php制作万年历的步骤_PHP制作万年历
  19. [4G5G专题-114]:部署 - LTE PRACH前导码格式、ZC序列的生成规则与规划
  20. 谷歌浏览器Google Chrome插件分享

热门文章

  1. 京东金融的贷款规模创新高
  2. C#基于NAudio的声音识别(一)——录制与切割
  3. html怎么做一个心形边框,使用CSS获取心形边框?
  4. Android 启用/禁用通过otg连接T卡功能
  5. Pika使用入门(一)【介绍】
  6. A Comprehensive Survey on Graph Neural Networks(图神经网络综合研究)
  7. 无内鬼,爬B站视频来一波
  8. Qt编写的项目作品6-可视化大屏电子看板系统
  9. 百度输入法输入汉字却显示英文
  10. 电子商务多平台运营与实践课程设计