安裝fpm打包工具

1      安裝fpm打包工具

建議首次安裝依次進行。後面很繞還容易把服務器搞崩潰,即使安裝不上也就算了,這個打包在自己機器測試最好嘛。

1.1  首次安裝

yum -y install ruby rubygems ruby-devel

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

gem sources--remove http://rubygems.org/

gem installfpm

ERROR:  Could not find a valid gem 'fpm' (>= 0) inany repository

可能是ruby阿里雲源不穩定,添加ruby淘寶源

gem sources -a http://ruby.taobao.org/

Errorfetching http://ruby.taobao.org/:

        bad response Not Found 404 (http://ruby.taobao.org/specs.4.8.gz)

地址可能不正確,更換爲https

gem sources -a https://ruby.taobao.org/

gem install fpm

ERROR:  Could not find a valid gem 'fpm' (>= 0) inany repository

下載出錯,找不到,可能沒有刪除ruby阿里雲源,默認找第一個添加的去了,移除

gem sources --remove http://mirrors.aliyun.com/rubygems/

gem install fpm

Buildingnative extensions.  This could take awhile...

Buildingnative extensions.  This could take awhile...

ERROR:  Error installing fpm:

        ruby-xz requires Ruby version >=1.9.3.

ruby版本太低安裝不了最新的fpm,更新ruby或安裝舊版本fpm1.4.0

gem install fpm -v 1.4.0

Successfullyinstalled clamp-0.6.5

Successfullyinstalled fpm-1.4.0

2gems installed

Installingri documentation for clamp-0.6.5...

Installingri documentation for fpm-1.4.0...

InstallingRDoc documentation for clamp-0.6.5...

InstallingRDoc documentation for fpm-1.4.0...

1.2  快照回滾後安裝(運營商網絡也可能影響)

yum -y install ruby rubygems ruby-devel

gem sources -a https://ruby.taobao.org/

gem sources--remove http://rubygems.org/

gem install fpm -v 1.4.0

ERROR:  Error installing fpm:

        json requires Ruby version ~> 2.0.

這個問題我不知道怎麼解決,考慮升級ruby了,那麼不管繼續執行下面安裝

gem install fpm

Buildingnative extensions.  This could take awhile...

Buildingnative extensions.  This could take awhile...

ERROR:  Error installing fpm:

        ruby-xz requires Ruby version >=1.9.3.

還是報這個錯誤,索×××如何把ruby1.8.7升級到1.9.3了,但是又怕其他軟件比如會出問題,所以你要是怕就考慮安裝到一個專門的目錄吧,不要覆蓋安裝。

wget https://cache.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p125.tar.gz

wget http://pyyaml.org/download/libyaml/yaml-0.1.7.tar.gz

tar xf yaml-0.1.7.tar.gz

cd yaml-0.1.7

./configure

make

make install

cd ..

tar xf ruby-1.9.3-p125.tar.gz

cd ruby-1.9.3-p125

./configure

make

make install

ruby --version

ruby1.8.7 (2013-06-27 patchlevel 374) [x86_64-linux]

發現還是1.8.7,怎麼回事?於是查看安裝成功的結尾處

spacer.gif

installingcommand scripts:   /usr/local/bin

installinglibrary scripts:  /usr/local/lib/ruby/1.9.1

installingcommon headers:    /usr/local/include/ruby-1.9.1

installingmanpages:         /usr/local/share/man/man1

但是命令目錄還是/usr/local/bin啊,和以前的一樣,那麼我執行ruby –version爲什麼是1.8.7,奇怪,難道說是沒有覆蓋,我去,我要把這個命令移走,重新編譯

which ruby

/usr/local/bin/ruby

mv /usr/local/bin/ruby /tmp/

which ruby

/usr/bin/ruby

/usr/bin/ruby –version

ruby1.8.7 (2013-06-27 patchlevel 374) [x86_64-linux]

爲什麼還有一個,我去,陰魂不散啊,移走

mv /usr/bin/ruby /tmp/ruby2

重新編譯

make

make install

查看路徑:

which ruby

查看版本

/usr/local/bin/ruby –version

ruby1.9.3p125 (2012-02-16 revision 34643) [x86_64-linux]

哎,終於好了,老天有眼

那繼續下一步,安裝fpm,前面已經添加好了ruby淘寶源

gem install fpm

-bash:/usr/bin/gem: /usr/bin/ruby: bad interpreter: No such file or directory

這又是什麼情況,說找不到ruby,我暈哦,難道gem命令內有寫ruby的路徑?

which gem

/usr/local/bin/gem

什麼情況,gem也不在/usr/bin/gem啊,可能這是後面安裝ruby就默認安裝了的,那我直接來個全路徑了

/usr/local/bin/gem install fpm

ERROR:  Loading command: install (LoadError)

    cannot load such file -- zlib

ERROR:  While executing gem ... (NameError)

uninitialized constantGem::Commands::InstallCommand

我要崩潰了,難道我生下來就是看紅屏的嗎?說無法加載zlib

rpm -qa zlib

zlib-1.2.3-29.el6.x86_64

zlib也是有的啊,算了,進入ruby源碼目錄,安裝源碼自帶的zlib

cd ext/zlib/

ruby extconf.rb

-bash:/usr/bin/ruby: No such file or directory

啥子情況哦,我又沒做啥子,ruby也找不到了,忘了用全路徑,可能PATH變量寫在前面的是以前那個,後面那個不去使用,默認使用前面那個,但是又被移除了,所以找不到

/usr/local/bin/ruby extconf.rb

make

make: Nothing to be done for `all'.

echo $?

0

貌似不是報錯

make install

make: Nothing to be done for `install'.

echo $?

0

貌似不是報錯

再來安裝,我就不信

/usr/local/bin/gem install fpm

ERROR:  Loading command: install (LoadError)

    cannot load such file -- zlib

ERROR:  While executing gem ... (NameError)

uninitialized constantGem::Commands::InstallCommand

還是不行,難道沒有make成功

cd ../../

make clean

cd ext/zlib/

/usr/local/bin/ruby extconf.rb

還是不行,哎,老子用yum死馬活馬醫

yum install zlib-devel –y

算了還是不行,老子不搞了,煞筆玩意,這條路不可行,整到天荒地老人都嚥了。

下面我又恢復快照,按首次安裝進行了一次,一樣很順利

結論:還是按首次安裝一步步進行吧,可能中間某個錯誤的步驟以及幫你安裝了某些組建,跳過了所謂的

ERROR:  Error installing fpm:

        json requires Ruby version ~> 2.0.

不管是錯誤步驟還是正確步驟,都依次執行,按我說的做就可以了。繞了你們一大圈。開頭有註明^V^,別怪我,自己沒看清楚。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章