码迷,mamicode.com
首页 > 其他好文 > 详细

将源码编译打成rpm包----以nginx为例

时间:2019-08-07 09:23:00      阅读:83      评论:0      收藏:0      [点我收藏+]

标签:png   ecs   rpm -ivh   root用户   root   mamicode   使用   nginx   pcre   

打包流程
准备源码软件
安装rpm-build
编写编译配置文件
编译RPM包

具体步骤

1.装工具
yum install rpm-build
安装依赖包
yum -y install gcc pcre-devel zlib-devel openssl-devel

rpmbuild -ba nginx.spec 会报错,没有文件和目录

技术图片
但是会自动在当前目录下创建一个rpmbuild目录(注意必须在用户的家目录下,本文用root用户)

技术图片
技术图片

在rpmbuild目录中

SOURCES 目录中存放源码包
BUILDROOT 是一个假根,用来做rpm包时存放目录的
SPECS 存放编译配置的spec文件
RPMS 存放生成的rpm包

2.拷贝源码包
cp nginx-1.8.0.tar.gz /root/rpmbuild/SOURCES

3.新建SPEC文件
cd /root/rpmbuild/SPECS
vim nginx.spec 必须是以.spec结尾

spec文件解析

Name:nginx 软件名称
Version:1.8.0 软件版本
Release: 1%{?dist} 第几次制作源码包 默认为1 可随意
Summary:nginx web server 汇总信息

#Group: 组包
License:GPL 协议
URL:www.test.com 网址
Source0:nginx-1.8.0.tar.gz 源码包名字必须和源码包名字一致

#BuildRequires: 依赖关系
#Requires:

%description 详细描述
this is web server

%pre 安装前脚本
%post 安装后脚本

%prep
%setup -q 解压并且cd进去

%build
./configure --with-http_ssl_module 可自定义安装扩展模块
make %{?_smp_mflags}

%install
make install DESTDIR=%{buildroot} 执行make install

%files
%doc
/usr/local/nginx/* 压缩哪些文件

%changelog

3.使用SPEC文件编译rpm包
rpmbuild -ba /root/rpmbuild/SPECS/nginx.spec
4.查看生成的rpm包
ll /root/rpmbuild/RPMS/x86_64/
技术图片
cd /root/rpmbuild/RPMS/x86_64/
5.安装测试rpm包
rpm -qpi nginx.rpm

技术图片
rpm -qpl nginx.rpm

技术图片
rpm -ivh nginx.rpm 验证安装

技术图片
ll /usr/local/nginx/

技术图片

将源码编译打成rpm包----以nginx为例

标签:png   ecs   rpm -ivh   root用户   root   mamicode   使用   nginx   pcre   

原文地址:https://blog.51cto.com/13843380/2427238

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!