快速生成RPM包——FPM小工具

1、fpm简介

1.1、简介

  • fpm 是rpm 打包工具的其中一种,官方的打包方式 rpmbuild ,学习成本高,需要学习spec 文件的编写。
  • 而fpm 工具打包则非常简单,一行命令就搞定RPM包!
  • 简单的来说就是把一种包类型转换成另一种(rpm)

github:https://github.com/jordansissel/fpm/

1.2、支持类型包

支持的源类型包:

  • dir: 将目录打包成所需要的类型,可以用于源码编译安装的软件包
  • rpm: 对rpm进行转换
  • gem: 对rubygem包进行转换
  • python: 将Python模块打包成相应的类型

支持的类型包:

  • rpm: 转换为rpm包
  • deb: 转换为deb包
  • solaris: 转换为solaris包
  • puppet: 转换为puppet包

1.3、常用参数

-s:指定源类型

-t:指定目标类型,即想要制作为什么包

-n:指定包的名字

-v:指定包的版本号

-C:指定打包的相对路径

-d:指定依赖于哪些包

-f:第二次包时目录下如果有同名安装包存在,则覆盖它;

-p:制作的rpm安装包存放路径,不想放在当前目录下就需要指定;

–post-install:软件包安装完成之后所要运行的脚本;同–offer-install

–pre-install:软件包安装完成之前所要运行的脚本;同–before-install

–post-uninstall:软件包卸载完成之后所要运行的脚本;同–offer-remove

–pre-uninstall:软件包卸载完成之前所要运行的脚本;同—before-remove
–prefix:制作好的rpm包默认安装路径;

2、fpm 安装

首先安装依赖:

  • yum - y install ruby rubygems ruby - devel

添加阿里云rubygems仓库

  • gem sources -a http://mirrors.aliyun.com/rubygems/

移除原来的源(不然会去拉取原来的源)

  • gem sources --remove https://rubygems.org/

安装fpm 工具(指定版本,不然会安装不上)

  • gem install fpm -v 1.3.3

遇到安装问题,可以参考具体的依赖:https://rubygems.org/gems/fpm

3、使用示例

3.1、编译源代码

这里我们以 pythonocc 为 例子,一个开源的3D图形工具。

下载源代码:

  • wget https://codeload.github.com/tpaviot/pythonocc-core/tar.gz/0.18.2
  • tar -zxvf pythonocc-core.tar.gz
  • cd pythonocc-core-0.18
  • mkdir cmake-build && cd cmake-build

编译:

  • cmake -DOCE_INCLUDE_PATH=/usr/local/include/oce …
  • make -j4

安装到指定目录:(这个很重要)

  • make install DESTDIR=/opt/

3.2、查看目录结构

指定安装到目录里面去
里面的目录结构,会根据安装到你系统的目录
在这里插入图片描述

3.2、生成rpm 包

fpm -s dir -t rpm -n pythonocc -v 0.18.2 -C /opt/usr/ --prefix /

-C 要指定你导入的安装目录

–prefix 至关重要,意思是你要安装到系统的哪个目录下,这个的意思是再根目录下安装。

安装到系统里面的目录将会是:
在这里插入图片描述
rpm -qpl 可以查看,安装包安装后的路径。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值