Centos打包tengine制作rpm安装包的步骤

这篇文章主要介绍“Centos打包tengine制作rpm安装包的步骤”,在日常操作中,相信很多人在Centos打包tengine制作rpm安装包的步骤问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Centos打包tengine制作rpm安装包的步骤”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

创新互联是一家专业从事成都网站设计、网站制作、网页设计的品牌网络公司。如今是成都地区具影响力的网站设计公司,作为专业的成都网站建设公司,创新互联依托强大的技术实力、以及多年的网站运营经验,为您提供专业的成都网站建设、营销型网站建设及网站设计开发服务!

1 安装CentOS的开发环境集成包及tengine的依赖包

代码如下:


yum groupinstall "Development Tools"
yum install pcre-devel
yum install openssl openssl-devel


2 创建tengine rpm包,用非root用户test

代码如下:


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


3 在家目录编写.rpmmacros(就是上一篇说的自定义制作路径的文件)

代码如下:


#.rpmmacros
%_topdir /home/test/rpmbuild
%_tmppath /home/test/rpmbuild/tmp
%buildroot /home/test/rpmbuild/BUILDROOT
%_prefix   /


4 在家目录里创建制作目录rpmbuild

代码如下:


rpmbuild/
├── BUILD
├── RPMS
├── SOURCES
│   └── tengine-1.5.0.tar.gz
├── SPECS
│   └── tengine.spec
├── SRPMS
└── tmp


5 tengine.spec内容

代码如下:


Name:       tengine
Version:    1.5.0
Release:    1
Vendor:     Taobao
Summary:    GUN Tengine X86_64
License:    GPL
Source:     tengine-1.5.0.tar.gz
Group:      System Enviroment/Daemons
URL:        http://tengine.taobao.org/
Packager:   guol@oschina.com
%description
Taobao tengine package


%prep
%setup -q
./configure  --prefix=/etc/Nginx/

make
%install
make DESTDIR=$RPM_BUILD_ROOT install
%clean
[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
make clean

%files
%defattr (-,root,root)
/etc/nginx/


注意:在centos 6.0上使用rpmbuild制作rpm包如果出现file not found: /root/rpmbuild/BUILDROOT/…的错误,看是centos 6中的rpmbuild topdir已经改变,为了能兼容centos 5的spec文件,需要对topdir进行修改

代码如下:


编辑/usr/lib/rpm/macros文件:
%_topdir                %{getenv:HOME}/rpmbuild
修改为:
%_topdir                %{_usrsrc}/

6 开始生产rpm包

代码如下:


#在test家目录
rpmbuild -ba ./rpmbuild/SPECS/tengine.spec


如果没有错误,则会在rpmbuild/RPMS目录下生成相关rpm包。这只是简单的制作过程,如果要做深度定制,可以针对安装前后执行的脚本做定制。

到此,关于“Centos打包tengine制作rpm安装包的步骤”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


新闻标题:Centos打包tengine制作rpm安装包的步骤
转载来源:http://cdiso.cn/article/jooehi.html

其他资讯