为什么80%的码农都做不了架构师?>>>   

许多朋友始终觉得RPM难做,主要是因为SPEC规则比较多,需要花精力去了解和熟悉。之前试用一个叫checkinstall的工具,可以自动打RPM包。很久没有维护了,在CentOS6上编译有问题。虽然也有网友给打了Patch,最终能用起来,可惜使用过程中还是会遇到诸多错误。

如今巧遇FPM,一行命令就搞定RPM包!

一、我们来先安装FPM:

yum -y install ruby rubygems # FPM是Ruby模块
gem sources -a http://ruby.taobao.org/ # 添加淘宝的Ruby仓库
gem sources --remove http://rubygems.org/ # 移除原生的Ruby仓库
# 安装fpm
gem install fpm

二、官网介绍了用FPM打deb包,我们翻译成rpm版:

wget http://nodejs.org/dist/v0.10.12/node-v0.10.12.tar.gz # 去nodejs官网下载最新源码包
tar zxvf node-v0.10.12.tar.gz -C /dev/shm/ # 解压
cd /dev/shm/node-v0.10.12/ # 进入源码目录
./configure --prefix=/usr --dest-cpu=x64 --dest-os=linux # 指定配置参数
make -j24 # 使用多核编译
mkdir /dev/shm/node-root
make -j24 install DESTDIR=/dev/shm/node-root # 指定安装路径
fpm -f -s dir -t rpm -n nodejs --epoch 0 -v 0.10.12 --iteration 1 -C /dev/shm/node-root -p ~/rpmbuild/RPMS/x86_64/ -d 'openssl >= 0.9.8'  -d 'libstdc++ >= 4.4.3' --verbose --category 'Development/Languages' --description 'Node.js real-time applications' --url 'nodejs.org' --license 'BSD' -m 'higkoo' --no-rpm-sign usr/bin usr/lib usr/share # 生成RPM
rpm -qpi ~/rpmbuild/RPMS/x86_64/nodejs-0.10.12-1.x86_64.rpm # 查看RPM包信息

三、查看安装包信息:

小技巧:'-e' 参数支持打包之前手动修改FPM自动生成的SPEC文件,然后再打包。不过注意CentOS5和CentOS6之间的rpm包不能混用,因为他们之间的glibc版本不同,动态库链接不上。

OK,没玩过就赶紧动手吧!

转载于:https://my.oschina.net/kisops/blog/152194

使用FPM快速生成RPM包相关推荐

  1. fpm制作mysql rpm包_FPM简介(定制rpm包)

    FPM简介 fpm是生成rpm包的工具.rpm包的制作,采用fpm工具完成,FPM非常易用,此命令可以把rpm包的安装.卸载做得更加优雅,在安装前可以做一些准备工作,安装后可以做一些收尾工作,在卸载前 ...

  2. fpm定制化RPM包之nginx rpm包的制作

    fpm定制化RPM包之nginx rpm包的制作 1.安装ruby模块 # yum -y install ruby rubygems ruby-devel 2.添加阿里云的Rubygems仓库,国外资 ...

  3. lanmp_wdcp_v2.4快速安装RPM包发布

    2019独角兽企业重金招聘Python工程师标准>>> [发布] lanmp_wdcp_v2.4快速安装RPM包发布 lanmp一键安装包是wdlinux官网2010年开始推出的la ...

  4. 在CentOS 6.3 64bit上如何从源码生成rpm包?

    具体例子参见<鸟哥私房菜>23.3.5中的例子,非常详细和经典! 下面是在CentOS 6.6 64bit上面的实操记录 首先查询本机是否有安装rpmbuild命令? whereis rp ...

  5. Idea快速生成War包

    在网上看到了一些使用Maven生成war包的方法,发现有点麻烦,分享一个简单的生成war包的方式. 1.使用Idea集成开发环境,安装Maven Helper插件. 2.在maven项目的在pom.x ...

  6. fpm制作mysql rpm包_fpm制做mysql-5.6.33 rpm包

    增加用户: # groupadd -r mysql # useradd -g mysql -r -s /sbin/nologin -M -d /data/my_db mysql 源码安装mysql-5 ...

  7. 用fpm制作mysql的rpm包_Fpm 之 Mysql-5.7.21 rpm 包制做

    Fpm 之 Mysql-5.7.21 rpm 包制做 1.首先将mysql-5.7.21编译安装包,安装到自定义的目录 1. 下载安装包 wget http://downloads.sourcefor ...

  8. Linux-什么是二进制包,源码包,RPM包,软件仓库

    博文说明[前言]: 本文将通过个人口吻介绍什么是二进制包,RPM包,源码RPM包(SRPM包),源码包,以及RPM常用命令,源码rpm的安装(*.src.rpm),源码包的安装步骤知识(./confi ...

  9. RPM包制作及yum仓库搭建

    RPM包制作 rpm包的制作是通过fpm软件来生成的,所以首先要安装fpm软件.又因为fpm的软件是ruby开发的,所以安装fpm的话首先要安装ruby等包 FPM功能简单说就是将一种类型的包转换成另 ...

最新文章

  1. 使用react全家桶制作博客后台管理系统
  2. 图解IIS服务器配置教程(asp\php\mysql)
  3. python嵌套字典赋值_Python:更新深度嵌套字典中的值
  4. mysql key uni_uni app 踩坑实录
  5. CNG 关于 Key 相关的操作
  6. IE6 透明遮挡falsh解决方案
  7. 函数,参数数组params与数组参数,结构函数
  8. Hive数据导出的三种方式
  9. apache缺省banner_NSFOCUS建议您采取以下措施以降低威胁: * 修改源代码或者配置文件改变SSH服务的缺省banner。...
  10. Linux下 mysql5.7的彻底卸载
  11. Linux基本命令二(帮助命令)
  12. Computing Platform------系统平台及其系列
  13. Ubuntu14.04LTS TensorFlow安装手册
  14. 解决pycharm问题:module 'pip' has no attribute 'main'
  15. 松下PLC 三个单位的延时定时器指令的使用
  16. xt5 连接android auto,2021年凯迪拉克XT6将添加无线Apple CarPlay和Android Auto
  17. 用户生命周期分析全攻略
  18. 网络故障排查简单思路(思路见目录)
  19. 身份证,银行卡,姓名用*号隐藏中间数字
  20. 生成模型的2022年——人工智能AIGC顶级论文回顾

热门文章

  1. shell常用的基础命令
  2. oracle10gr2 x86,Oracle10gR2 On RHEL5 x86安装技术文档(英文原版)
  3. redis面试全家桶
  4. Tomcat单向Https验证搭建,亲自实现与主流浏览器、Android/iOS移动客户端安全通信
  5. python批量读取文件内容_Python 文本文件内容批量抽取实例
  6. weblogic修改java重启_修改weblogic域的jdk
  7. mysql引号问题_MySQL中引号的问题
  8. java 成绩 排名算法_Java计算成绩平均值和排名
  9. android ijkplayer使用_Ijkplayer、ExoPlayer、VLC播放器综合比较
  10. 后端返回html标签到前端,后端返回的HTML代码字符串怎么能自动渲染到前端页面...