陈奇网络工作室

在linux上使用fpm软件包创建rpm软件包

系统运输

一、说明: fpm的功能是将一种类型的软件包转换为另一种类型

fpm支持的源类型包:

? dir?将目录打包到编译安装源代码所需的软件包类型中;

? rpm :转换rpm;

? gem :转换rubygem包;

? python :将python模块打包为适当的类型

fpm支持的目标类型包:

? rpm :转换为rpm数据包

? deb :转换为deb包

Solari :转换为Solaris软件包

puppet :转换为p upper包

fpm的一般参数:

-s :指定源类型;

-t )指定目标类型。 也就是说,你想制作什么样的包装;

-n :指定包的名称

-v :指定软件包的版本号

c : 指定软件包的相对路径

-d :指定依赖的软件包;

? -f )对于第二个软件包,如果目录下存在同名的安装软件包,则将其复盖;

? -p )创建的rpm安装软件包的存储路径位于当前目录下,而不指定;

? post-install :在软件包安装完成后运行的脚本;

? post-uninstall :卸载软件包后运行的脚本;

? 预安装:在软件包安装完成之前运行的脚本;

? pre-uninstall :在软件包卸载完成之前运行的脚本;

prefix :已创建的rpm软件包的默认安装路径

? 二.安装fpm

# yum installyrubyrubygems? 在安装ruby-devel#FPM之前,必须安装ruby,rubygem;

#删除原生ruby仓库,添加淘宝ruby仓库:

? # gem sourcesadd http://gems.ruby-China.com /remove 3358 ruby gems.org /

? 3358 gems.ruby-China.com/addedtosources

33558 ruby gems.org/removedfromsources

[root@jump ~]# gem sources -l

? * * *目前来源* * *

http://gems.ruby-china.com/

[root@jump ~]# gem install fpm

ERROR: Error installing fpm :

? ffi requires Ruby version=1.9 . #安装中发生这样的错误时,请首先安装ffi、json。 这也是ruby版本过低的原因。

? # geminstalljsonv1.8. 0

? #gem install ffi? -v 1.9.18

# wget https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.3.tar.gz

#tar xf ruby-2.5.3.tar.gz

? #cd ruby-2.5.3

#./configureprefix=/usr/local/ruby

? #make make install

# echo“export path=$ path:/usr/local/ruby/bin”/etc/profile

? #source /etc/profile

[ root @ jump ruby-2.5.3 ] # geminstallfpm? 安装fpm时发生以下错误。

错误: loading command:install ( load error )。

cannot load such file — zlib

error:whileexecutinggem…( nomethoderror )

undefined method ` invoke _ with _ build _ args\& amp; quot; fornil:nilclass

调查资料是因为没有安装zlib-devel

zlib-devel的安装

# yum installyz Li B- devel

#cd ruby-2.5.3/ext/zlib

#ruby ./extconf.rb #在此步骤中,make:* * * noruletomaketarget `/include/ruby.h\& amp; quot;neededby`zlib.o\

#vim? ruby-2.5.3/ext/zlib/Makefile

#zlib.o: $(top_srcdir )/include/ruby.h #用以下行替换此行

zlib.o:/./include/ruby.h

#make? 制造安装

#gem install fpm

Fetching:stud-0.0.23.gem(100% ) ) ) ) ) ) )。

successfullyinstalledstud-0.0.23

Fetching:Cabin-0.9.0.gem(100% ) ) ) ) ) ) )。

successfullyinstalledcabin-0.9.0

Fetching:clamp-1.0.1.gem(100% ) ) ) ) ) ) )。

successfullyinstalledclamp-1.0.1

fetching:mustache-0.99.8.gem ( 100 % ) )。

successfullyinstalledmustache-0.99.8

Fetching:insist-1.0.0.gem(100% ) ) ) ) ) ) ) ) )。

successfullyinstalledinsist-1.0.0

Fetching:dotenv-2.5.0.gem(100% ) ) ) ) ) ) ) ) ) ) ) ) )。

successfullyinstalleddotenv-2.5.0

fetching:please run-0.0.30.gem ( 100 % ) ) )。

successfullyinstalledpleaserun-0.0.30

Fetching:FFI-1.9.25.gem(100% ) ) )。

buildingnativeextensions.thiscouldtakeawhile…

successfullyinstalledffi-1.9.25

fetching:io-like-0.3.0.gem ( 100 % ) ) ) ) ) )。

successfullyinstalledio-like-0.3.0

fetching:ruby-xz-0.2.3.gem ( 100 % ) ) ) ) ) )。

successfullyinstalledruby-xz-0.2.3

fetching:child process-0.9.0.gem ( 100 % ) ) ) ) ) ) ) ) ) 100 % ) ) ) ) ) ) )。

successfullyinstalledchildprocess-0.9.0

fetching:arr-pm-0.0.10.gem ( 100 % ) ) )。

successfullyinstalledarr-pm-0.0.10

fetching:backports-3.11.4.gem ( 100 % ) ) ) ) ) )。

successfullyinstalledbackports-3.11.4

Fetching:JSON-1.8.6.gem(100% ) )。

buildingnativeextensions.thiscouldtakeawhile…

successfullyinstalledjson-1.8.6

successfullyinstalledfpm-1.10.2

parsingdocumentationforstud-0.0.23

installingridocumentationforstud-0.0.23

parsingdocumentationforcabin-0.9.0

installingridocumentationforcabin-0.9.0

parsingdocumentationforclamp-1.0.1

安装网格管理框架-1.0. 1

parsingdocumentationformustache-0.99.8

installingridocumentationformustache-0.99.8

parsingdocumentationforinsist-1.0.0

installingridocumentationforinsist-1.0.0

parsingdocumentationfordotenv-2.5.0

installingridocumentationfordotenv-2.5.0

parsingdocumentationforpleaserun-0.0.30

installingridocumentationforpleaserun-0.0.30

parsingdocumentationforffi-1.9.25

installingridocumentationforffi-1.9.25

parsingdocumentationforio-like-0.3.0

installingridocumentationforio-like-0.3.0

parsingdocumentationforruby-xz-0.2.3

installingridocumentationforruby-xz-0.2.3

parsingdocumentationforchildprocess-0.9.0

installingridocumentationforchildprocess-0.9.0

parsingdocumentationforarr-pm-0.0.10

installingridocumentationforarr-pm-0.0.10

parsingdocumentationforbackports-3.11.4

installingridocumentationforbackports-3.11.4

parsingdocumentationforjson-1.8.6

installingridocumentationforjson-1.8.6

parsingdocumentationforfpm-1.10.2

installingridocumentationforfpm-1.10.2

doneinstallingdocumentationforstud,cabin,clamp,mustache,insist,dotenv,pleaserun,ffi,io-like,ruby-xz,chz

15 gems安装

这样fpm的安装就成功了;

三.打包:

? # fpm-sdir-trpm-nnginx-v1. 14.1-d\& amp; quot; pcre-devel,OpenSSL-devel\\\& quot; post-install/server

详情请访问云服务器、域名注册、虚拟主机的问题,请访问西部数码代理商官方网站: www.chenqinet.cn

相关推荐

后台-系统设置-扩展变量-手机广告位-内容页底部广告位3