最近又在centos6.4下折腾tengine了,刚好不久前看了rpm包的制作方法,所以又有了搞个rpm包的想法。
1 安装centos的开发环境集成包及tengine的依赖包
1 |
yum groupinstall "Development Tools" |
3 |
yum install openssl openssl-devel |
2 创建tengine rpm包,用非root用户test
2 |
mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS} |
3 在家目录编写.rpmmacros(就是上一篇说的自定义制作路径的文件)
2 |
%_topdir /home/test/rpmbuild |
3 |
%_tmppath /home/test/rpmbuild/tmp |
4 |
%buildroot /home/test/rpmbuild/BUILDROOT |
4 在家目录里创建制作目录rpmbuild
5 |
│ └── tengine-1.5.0.tar.gz |
5 tengine.spec内容
05 |
Summary: GUN Tengine X86_64 |
07 |
Source: tengine-1.5.0.tar.gz |
08 |
Group: System Enviroment/Daemons |
09 |
URL: http://tengine.taobao.org/ |
10 |
Packager: guol@oschina.com |
12 |
Taobao tengine package |
17 |
./configure --prefix=/etc/nginx/ |
21 |
make DESTDIR=$RPM_BUILD_ROOT install |
23 |
[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT" |
27 |
%defattr (-,root,root) |
注意:在centos 6.0上使用rpmbuild制作rpm包如果出现File not found: /root/rpmbuild/BUILDROOT/…的错误,看是centos 6中的rpmbuild topdir已经改变,为了能兼容centos 5的spec文件,需要对topdir进行修改
1 |
编辑/usr/lib/rpm/macros文件: |
2 |
%_topdir %{getenv:HOME}/rpmbuild |
6 开始生产rpm包
2 |
rpmbuild -ba ./rpmbuild/SPECS/tengine.spec |
如果没有错误,则会在rpmbuild/RPMS目录下生成相关rpm包。这只是简单的制作过程,如果要做深度定制,可以针对安装前后执行的脚本做定制。
注:以上配置文件在centos6.4上测试通过
- fpm rpm制作
使用fpm命令制作rpm包并安装 工作中有如下情况需要将文件打包rpm: 避免重复工作,将源码程序打包为rpm 使用yum发布项目,项目打包为rpm 将自己写好的程序打包为rpm,提供给用户下载 其他 ...
- pypcap rpm制作
1.下载地址 https://pypi.org/project/pypcap/#history 2.下载后,解压并制作rpm tar -xvf pypcap-1.2.3.tar.gz python s ...
- MySQL5.6.12 rpm制作及及自动化部署安装
转自:http://blog.itpub.net/29254281/viewspace-1268918/ 首先,下载rpmbuildyum install rpm-build -y它是Red Hat用 ...
- kernel 4.18.18 rpm 制作
1.下载kernel源码: wget https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/linux-4.18.18.tar.gz 2.解压源码 ...
- RPM制作
http://blog.csdn.net/justlinux2010/article/details/9905425
- 一步步制作RPM包
一步步制作RPM包 来源 http://blog.51cto.com/laoguang/1103628 一.RPM制作步骤 我们在企业中有的软件基本都是编译的,我们每次安装都得编译,那怎么办呢?那就根 ...
- RPM包制作教程
一.RPM介绍 RPM 前是Red Hat Package Manager 的缩写,本意是Red Hat 软件包管理,顾名思义是Red Hat 贡献出来的软件包管理:现在应为RPM Package M ...
- 制作rpm包步骤
由于项目需要,需要自行制作rpm包.比较全面的可以参考如下链接: http://blog.chinaunix.net/uid-23069658-id-3944462.html 大致框架如下: 1,安装 ...
- 烂泥:Linux源码包制作RPM包之Apache
本文由秀依林枫提供友情赞助,首发于烂泥行天下 公司服务器比较多,需要把apache源码包制作成rpm包,然后放到公司内网yum源上进行下载安装.apache的rpm包安装方式比源码安装方式比较快,这能 ...
随机推荐
- Android系统移植与驱动开发--第四章
第四章 源代码的下载和编译 一个android内核相当于4G,而一个Linux内个只有几百M,Linux内核相对于android内核来说实在是小巫见大巫.了解android源代码不一定要详细了解,只去 ...
- Android四大图片缓存(Imageloader,Picasso,Glide,Fresco)原理、特性对比
四大图片缓存基本信息 Universal ImageLoader 是很早开源的图片缓存,在早期被很多应用使用. Picasso 是 Square 开源的项目,且他的主导者是 JakeWharton,所 ...
- iOS国际化支持
写给自己看: 1.先创建一个国际化文件,用于描述在不同的区域环境,显示不同的value.文件名必须是Localizable.strings,文件的内容稍后再写.
- angular中ueditor插件的使用
#在angularjs中使用ueditor编辑器需要注意事项: 在ui-view中使用放置ueditor的div,页面加载时编辑器在页面中是不显示的,需要通过指令手动replay 例: /** * u ...
- C#计算某个时间距离当前日期的天数
方法一: DateTime dt1 = Convert.ToDateTime("2013-09-30"); DateTime dt2 = DateTime.Now; int cou ...
- PAT - IO - 螺旋方阵
所谓“螺旋方阵”,是指对任意给定的N,将1到N*N的数字从左上角第1个格子开始,按顺时针螺旋方向顺序填入NxN的方阵里.本题要求构造这样的螺旋方阵. 输入格式: 输入在一行中给出一个正整数N(< ...
- 清除div浮动的三种方式
html: <body> <div class="main"> <div class="first"></div> ...
- Yii2的相关学习记录,下载Yii2(一)
原先学习过Yii1的相关知识,虽然也是半懂不懂的,但稍微的结构是了解的.现在利用晚上的时间学习下Yii2的使用,打算建一个后台管理系统,这里记录下,以免自己以后忘记. 目前已看一部分Yii2的权威指南 ...
- 魅蓝3s adb interface 找不到驱动程序
完全照搬大神的步骤就ok啦,,自己记录下,方便以后查找 Win7 x64 Eclipse无法识别手机 / adb interface有黄色感叹号,无法识别 http://blog.csdn.net/z ...
- js-ajax实现获取xmlHttp对象
//获取xmlHttp对象 function createXMLHttp() { var xmlhttp; //对于大多数浏览器适用 if (window.XMLHttpRequest) { xmlh ...