Zlib在新的ubuntu server / rvm / gemset中不断出现问题

时间:2011-11-22 23:26:54

标签: ruby rvm zlib

我刚刚在新的ubuntu 10.04 LTS服务器和一个红宝石1.9.2-p180上安装了RVM。我在我的项目文件夹中创建了一个新的gemset,它有一个Gemfile。我意识到为了在gemfile中安装gem,我需要安装bundler,所以我做了

gem install bundler

但是,我收到了这个错误:

ERROR:  Loading command: install (LoadError)
  no such file to load -- zlib
ERROR:  While executing gem ... (NameError)
  uninitialized constant Gem::Commands::InstallCommand

我用Google搜索了一下并尝试了这个:

rvm pkg install zlib

安装好但没有解决问题。我也试过安装rake gem,但尝试做同样的错误。

有点卡住...有什么建议吗?谢谢,最大

编辑 - 顺便说一句,我可以在rvm之外安装捆绑器gem,即使用系统ruby。

EDIT2 - 我通过删除ruby的版本,然后使用zlib再次安装它来解决这个问题:

rvm remove 1.9.2-p180
rvm install 1.9.2-p180 -C --with-zlib-dir=$rvm_path/usr

现在我可以安装捆绑包和我的所有宝石了。万岁。 除了,当我尝试打开我的rails env(使用rails srails crake db:create)时,我收到了这个致命的错误:

/home/max/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/
1.9.1/rubygems/custom_require.rb:36:in `require': 
/lib/libz.so.1: version `ZLIB_1.2.3.3' not found (required by 
/home/max/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/i686-linux/zlib.so) - 
/home/max/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/i686-linux/zlib.so (LoadError)

所以,仍然没有走出困境zlib-wise。我不知道为什么zlib会引起这样的问题,有什么想法吗?

1 个答案:

答案 0 :(得分:3)

对它进行排序!

正在运行locate libz给我

/home/max/.rvm/src/zlib-1.2.5/libz.a
/home/max/.rvm/src/zlib-1.2.5/libz.so
/home/max/.rvm/src/zlib-1.2.5/libz.so.1
/home/max/.rvm/src/zlib-1.2.5/libz.so.1.2.5
/home/max/.rvm/usr/lib/libz.a
/home/max/.rvm/usr/lib/libz.so
/home/max/.rvm/usr/lib/libz.so.1
/home/max/.rvm/usr/lib/libz.so.1.2.5
/lib/libz.so.1
/lib/libz.so.1.2.3.3

我刚注意到lib中的libz版本是1.2.3.3,而使用rvm安装的版本是1.2.5。这可能是个问题吗?在/ lib文件夹中,zlib.so.1与其邻居文件libz.so.1.2.3.3进行符号链接。

我尝试将其符号链接到/home/max/.rvm/usr/lib/libz.so.1.2.5

sudo rm /lib/libz.so.1
sudo ln -s /home/max/.rvm/src/zlib-1.2.5/libz.so.1 /lib/libz.so.1

并且,这似乎有效......但我仍然不能确切地知道出了什么问题,所以欢迎更有见地的解决方案/解释:)