Centos打包tengine制作rpm安装包教程

(编辑:jimmy 日期: 2025/12/30 浏览:2)

最近又在centos6.4下折腾tengine了,刚好不久前看了rpm包的制作方法,所以又有了搞个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</p> <p>
%prep
%setup -q
./configure --prefix=/etc/Nginx/ </p> <p>make
%install
make DESTDIR=$RPM_BUILD_ROOT install
%clean
[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
make clean</p> <p>%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包。这只是简单的制作过程,如果要做深度定制,可以针对安装前后执行的脚本做定制。

一句话新闻

一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?