gemをインストールしようとしたら、zlibが見つからない、とか言われた

  • 14
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

こんなエラーが出た

新しい環境でRubyも新規インストールしたし、Bundlerでも入れてみようとしたら、

$ gem install bundler
ERROR:  Loading command: update (LoadError)
    cannot load such file -- zlib
ERROR:  While executing gem ... (NameError)
    uninitialized constant Gem::Commands::UpdateCommand

Bundlerがインストールできない。

$ gem update
ERROR:  Loading command: update (LoadError)
    cannot load such file -- zlib
ERROR:  While executing gem ... (NameError)
    uninitialized constant Gem::Commands::UpdateCommand

gem updateもできない。むむむ。

対処

手っ取り早く解決したい方へ。

  1. zlibをインストール
 $ sudo apt-get install zlib1g-dev
  1. rubyを再インストール(これが大事)
  $ rbenv install 1.9.3-p484
  $ rbenv rehash

詳細

環境

Ubuntu 14.04 LTS 64bit (on Virtualbox)
ruby: 1.9.3-p484 (rbenvでインストール)

手順

上述の通り、zlibが見つからないというメッセージが出たので、

$ sudo apt-cache search zlib dev
...
zlib1g-dev - 圧縮ライブラリ - 開発キット
...
$ sudo apt-get install zlib1g-dev
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
  zlib1g-dev
(以下省略)

zlibインストール完了。ではもう一度 gem をインストール。

$ gem install bundler
ERROR:  Loading command: update (LoadError)
    cannot load such file -- zlib
ERROR:  While executing gem ... (NameError)
    uninitialized constant Gem::Commands::UpdateCommand

ダメじゃん。

こちらを参考にrubyを再インストール。

$ rbenv install 1.9.3-p484
rbenv: /home/myname/.rbenv/versions/1.9.3-p484 already exists
continue with installation? (y/N) y
Downloading yaml-0.1.6.tar.gz...
-> http://dqw8nmjcqpjn7.cloudfront.net/7da6971b4bd08a986dd2a61353bc422362bd0edcc67d7ebaac68c95f74182749
Installing yaml-0.1.6...
Installed yaml-0.1.6 to /home/myname/.rbenv/versions/1.9.3-p484

Downloading ruby-1.9.3-p484.tar.gz...
-> http://dqw8nmjcqpjn7.cloudfront.net/d684bc3a5ba72cda9ef30039f783c0f8cdc325bae5c8738c7bf05577cbe8f31d
Installing ruby-1.9.3-p484...
Installed ruby-1.9.3-p484 to /home/myname/.rbenv/versions/1.9.3-p484
$ gem install bundler
Fetching: bundler-1.6.3.gem (100%)
Successfully installed bundler-1.6.3
1 gem installed
Installing ri documentation for bundler-1.6.3...
Installing RDoc documentation for bundler-1.6.3...

めでたし、めでたし。