私はubuntu 12.04を使用しており、rbenv v0.4.0で有効化されたruby 2.0.0-p195を使用しています。
下を走ると、
$ruby -rdigest/sha1 -e '1'
このエラーが発生します。
/home/ktsuji/.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require': /home/ktsuji/.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/x86_64-linux/digest/sha1.so: undefined symbol: rb_Digest_SHA1_Init - /home/ktsuji/.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/x86_64-linux/digest/sha1.so (LoadError)
from /home/ktsuji/.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
これは、ここで説明されている問題と非常によく似ていることを知っています: rvm を使用した Ruby コンパイルの障害: ラックの実行中に「未定義のシンボル: rb_Digest_MD5_Init」を取得する
しかし、私はすでに上記のスレッドで答えを試し、以下を実行しました:
$ sudo apt-get install zlib1g-dev libreadline6-dev libssl-dev libxml2-dev
そして再インストールを試みました:
$ sudo apt-get install --reinstall zlib1g-dev libreadline6-dev libssl-dev libxml2-dev
$ (rbenv uninstall -f 2.0.0-p195 && rbenv install 2.0.0-p195)
しかし、運がありませんでした。また、rbenv を使用して他のバージョンの Ruby も試しました。
- 1.8.7-p371 は正常に動作します。
- 1.9.3-p429 で上記と同様のエラーが発生しました。
この問題を解決するためのアイデアはありますか?