我在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'
我知道这与此处描述的问题非常类似: Faulty ruby compilation with rvm: getting 'undefined symbol: rb_Digest_MD5_Init' while running racku
但我已经在上面的帖子中尝试了答案,并在下面运行:
$ 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版本:
有关解决此问题的任何想法吗?