0
gourav@ubuntu$ bundle install

/home/gourav/.rvm/rubies/ruby-1.8.7-p352/lib/ruby/1.8/i686-linux/digest/sha1.so:

undefined symbol: rb_Digest_SHA1_Init - 

/home/gourav/.rvm/rubies/ruby-1.8.7-p352/lib/ruby/1.8/i686-linux/digest/sha1.so

gourav@ubuntu$ gem li

*** LOCAL GEMS ***

abstract (1.0.0)
actionmailer (3.0.10)
actionpack (3.0.10)
activemodel (3.0.10)
activerecord (3.0.10)
activeresource (3.0.10)
activesupport (3.0.10)
arel (2.0.10)
builder (2.1.2)
bundler (1.0.18)
erubis (2.6.6)
i18n (0.5.0)
mail (2.2.19)
mime-types (1.16)
polyglot (0.3.2)
rack (1.2.3)
rack-mount (0.6.14)
rack-test (0.5.7)
rails (3.0.10)
railties (3.0.10)
rake (0.9.2)
rdoc (3.9.2)
thor (0.14.6)
treetop (1.4.10)
tzinfo (0.3.29)
4

3 回答 3

4

运行rvm notes并确保运行它告诉您的任何内容,然后重新编译 ( rvm install 1.8.7) ruby​​。

最有可能的是,如果您在当前的 RVM 上,您会被告知这样做:

apt-get install build-essential bison openssl libreadline6 libreadline6-dev 
                curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev 
                libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev 
                autoconf libc6-dev ncurses-dev automake
于 2011-09-01T14:20:15.740 回答
0

我在没有使用 rvm 的 CentOS 服务器上遇到了这个问题。运行脚本/控制台时,ruby 会抱怨rb_Digest_SHA1_Init。运行脚本/服务器时,ruby 会抱怨rb_Digest_MD5_Init

在对 ruby​​ 进行了多次重建之后,并且在安装(通过 yum)本文和其他帖子建议的所有额外软件包之后,最终为我修复它的是 在配置 ruby​​ 构建时添加了--enable-pthread 。

所以,

安装 Dylan Markow 建议的所有开发工具。如果使用 yum,运行

yum search <name>

其中是“ncurses-dev”或“libxml2-dev”的简化版本。关于该主题的所有其他帖子都使用 apt-get,这对我来说浪费了很多时间。

使用 --enable-pthread 参数重建 ruby​​;

./configure --enable-pthread && make && make install
于 2013-02-18T11:55:53.223 回答
0

我犯了同样的错误。我试图卸载 libssl-dev 并解决了这个问题……现在我的 ruby​​ 没有任何 ssl 支持。

于 2013-05-25T23:35:22.510 回答