Ubuntuにfluentdをインストールしようとしてつまづく
Ubuntuにfluentdをインストールしようとして、次のコマンドを実行。
$ gem install fluentd
すると、次のようなエラーが。
/home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- zlib (LoadError)
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems.rb:540:in `gunzip'
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/remote_fetcher.rb:239:in `fetch_path'
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/spec_fetcher.rb:269:in `load_specs'
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/spec_fetcher.rb:231:in `block in list'
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/spec_fetcher.rb:227:in `each'
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/spec_fetcher.rb:227:in `list'
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/spec_fetcher.rb:150:in `find_matching_with_errors'
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/spec_fetcher.rb:177:in `find_matching'
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/commands/query_command.rb:116:in `execute'
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/commands/search_command.rb:27:in `execute'
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/command.rb:278:in `invoke'
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/command_manager.rb:147:in `process_args'
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/command_manager.rb:117:in `run'
from /home/hoge/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/gem_runner.rb:65:in `run'
from /home/hoge/.rbenv/versions/1.9.3-p194/bin/gem:21:in `'
解決方法を探してみるとすぐに発見。
http://stackoverflow.com/questions/769496/ubuntu-noob-rails-install-fails-on-zlib
$ rvm pkg install zlib
しかし、怒られる。
zsh: command not found: rvm
インストールしてませんでした。
ということで、rvmをインストール。
$ gem install rvm
だめでした。
ERROR: Loading command: install (LoadError)
cannot load such file -- zlib
ERROR: While executing gem ... (NameError)
uninitialized constant Gem::Commands::InstallCommand
もっと根っこの部分でだめですね。
探してみると同じ文句を言われた方がおられました。
Ubuntu に ruby をインストールして zlib がないと文句を言われる
早速、zlib1g-devをインストール。
$ sudo aptitude install zlib1g-dev
そして、いざ。
ERROR: Loading command: install (LoadError)
cannot load such file -- zlib
ERROR: While executing gem ... (NameError)
uninitialized constant Gem::Commands::InstallCommand
はい。
rbenv使っている場合は何かしないとダメなのかな?
探してみると、参考になるページがありました。
rbenvでインストールしたRubyのgemコマンドがzlib云々ほざいて動かない時の対処法
ということで、rubyを再インストール。
rbenvで再インストールする方法が分からなかったので、とりあえずもう一度インストールしてみる。
$ rbenv install 1.9.3-p194
fluentdをインストール。
$ gem install fluentd
無事成功!
しかし、かなりのパワープレイでした。
もっと勉強しないとだめですね;