ChatGPT解决这个技术问题 Extra ChatGPT

Ubuntu rails 安装在 zlib 上失败

我刚刚转移到 Ubuntu 8.10 作为我的开发工具箱;这是我第一次认真尝试将 Linux 作为日常使用的操作系统,我很难让 Rails 运行起来。我遵循了许多似乎都可以正常工作的教程,但是当我尝试在任何东西上使用 gem install 或 gem update 时,我得到一个看起来像这样的错误:

/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- zlib (LoadError)
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/spec_fetcher.rb:1
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/commands/update_command.rb:5
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:167:in `load_and_instantiate'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:88:in `[]'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:144:in `find_command'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:131:in `process_args'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:102:in `run'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/gem_runner.rb:58:in `run'
from /usr/local/bin/gem:21

我已经(按照教程中的建议)安装了 zlib、zlib1g 和 zlib1g-dev。我什至找到了一些关于这个特定问题的教程(但是,所有这些都是针对我以外的口味),但它们没有帮助。

我在 Ubuntu 8.10,ruby 版本 1.8.8dev gem 版本 1.3.2

我试过分别重新安装红宝石和宝石,但无济于事。

“在 zlib 上安装 Ubuntu noob rails 失败”哇。这就像有史以来最美丽的诗。
apt-get install zlib1g zlib1g-dev 在 Ubuntu 10.04 上为我工作

C
Community

如果您在尝试在 Ubuntu 10.04 上使用 Ruby 版本管理器 (RVM) 安装 Ruby 时遇到这个问题,那么在 rvm 网站 http://rvm.beginrescueend.com/packages/zlib/ 上有安装 zlib 的说明

步骤是:

rvm pkg install zlib

(或 rvm package install zlib 如果您收到“错误:无法识别的命令行参数:'pkg'” - 旧版本的 rvm 使用动词“包”代替)

然后

rvm remove 1.9.1
rvm install 1.9.1

很好,同样的方法对我有用,但对 1.9.2 有细微的变化: vm package install zlib ; rvm 删除 1.9.2-p0 ; rvm install 1.9.2-p0 --with-zlib-dir=$rvm_path/usr
太好了,我想知道为什么即使通过 apt 安装了 zlib,rvm 也不能在 debian 上工作
遇到了同样的麻烦,终于发现这对我有用:vm package install zib; rvm remove 1.9.2; rvm install 1.9.2 --with-zlib-dir=$rvm_path/usr
非常感谢!我有同样的问题。我只需要在 Ubuntu 中用“ree”替换“1.9.1”。 +1!
感谢您提供 pkg 第二个选项!
A
AdrianVeidt

我正在使用 Ubuntu 10.04 (Lucid),我想安装 ruby 1.9.2,因为 Rails 不推荐使用 1.9.1。所以我下载了 1.9.2 的源代码并解压/解压。我的源发行版是 ruby-1.9.2-p0。解压后,我构建 zlib 如下:

cd ruby-1.9.2-p0/ext/zlib
ruby extconf.rb
make
sudo make install
sudo gem install rails

解决了这个问题。这类似于其他人在上面发布的内容,但不完全一样,所以我想我也可以准确地发布我为实现它所做的事情。


这是我找到的最好的资源。我在没有 rvm 的情况下从源代码安装了 ruby,并遇到了 zlib 的问题。这篇文章帮助很大。谢谢!
谢谢!修复了 1.9.2-p136/Ubuntu 10.04.1 上的问题。
谢谢你。也修复了 1.9.2-p180/Red Hat 4.1.2-46 上的问题。
这适用于 Ubnutu 11.04/Ruby 1.9.2-p180。我尝试了 apt-get install zlib1g zlib1g-dev,但它不起作用(可能是在我编译 Ruby 之前没有安装 zlib1g-dev)。
即使您从源代码安装 ruby,似乎您也需要这个。不知道为什么默认不安装
Y
Yuki Nishijima

我在 CentOS 中遇到了同样的问题,并通过执行以下命令来修复它:

首先,我确保 zlib 和 zlib-devel 存在(就像上面的许多建议一样)。

yum install zlib zlib-devel

其次,我重新编译安装了ruby自带的zlib的源码。

cd /home/myname/installers/ruby-1.8.7-p174/ext/zlib/
ruby extconf.rb --with-zlib-include=/usr/include --with-zlib-lib=/usr/lib
make
make install

该命令似乎解决了问题,然后我执行 gem update --system 并且 zlib 的错误消失了。然后我用 gem install rails 安装 rails。请注意我之前安装了gem,并且在重新编译并安装zlib之后,我都没有重新编译安装gem(实际上我不知道如何卸载它,因为我没有找到执行此操作的脚本)

这对我有用……希望你能。

问候。


D
Dan

尝试

aptitude install zlib1g-dev

然后去做你的事。


在能够编译 ruby 源代码附带的 zlib 之前,我实际上必须这样做
A
Andrew Grimm

我真的不喜欢这些答案中的任何一个......没有一个真正关注用户的实际需求和问题......只是人们告诉他们做了什么......没有上下文,它甚至对我不起作用......

所以, ..

我正在安装一个新盒子 Ubuntu 8.04 LTS 64-bit ...

所以我 ...

cd ~  
wget ftp://ftp.ruby-lang.org//pub/ruby/1.9/ruby-1.9.2-p180.tar.gz  
tar -xvvf ruby-1.9.2-p180.tar.gz  
cd ruby-*  
./configure  
make  
install  
sudo make install  

然后我有这个问题......

gem list

它不起作用......关于zLib的一些东西没有找到废话......

所以,我实际上阅读了自述文件,发现我需要编辑一个文件......

[my ruby source directory]/ext/Setup

并取消注释其中包含 zLib 的行...通过删除第一列中的“#”

然后我再次运行命令...包含在此处以供参考...

./configure
make  
install  
sudo make install  

一切都很好......这是合乎逻辑的......并且没有“rvm”和其他......“只需安装更多东西以使其工作”类型的解决方案。

乔特


对我没有帮助。我也阅读了自述文件,并按照它的说明进行操作,但即使在我仍然无法让 ruby gems 工作之后,它仍然说没有 zlib ......
实际上答案是相关的,因为这是使用 rvm 时的常见问题。你的回答更适合不使用rvm的人。
Y
Yuki Nishijima

只需转到 Ruby Source Package ,解压缩它。

转到 /your-ruby-dir/ext/zlib

ruby extconf.rb
make
sudo make install

如果缺少包它会告诉你,主要是 libzlib 相关的包

问候

索拉布


R
Rod McLaughlin
rvm package install zlib
rvm remove 1.9.1
rvm install 1.9.1

做到了。经过无数次的大雁追逐,我很高兴找到了这个页面。


仅供参考 - 在更新版本的 rvm 中,“package”已更改为“pkg”。请参阅github.com/wayneeseguin/rvm/pull/345
Y
Yuki Nishijima

是的,那也没有做这项工作。从另一个来源得到这个,这终于在其他东西失败的地方为我做到了。

wget http://www.blue.sky.or.jp/atelier/ruby/ruby-zlib-0.6.0.tar.gz
tar xvzf ruby-zlib-0.6.0.tar.gz
cd ruby-zlib-0.6.0
ruby extconf.rb && make
sudo make install

从源代码重新安装 ruby gems

无论如何,谢谢,伙计们。


我在运行 extconf.rb 时遇到问题。通过安装 zlib-devel 解决了它(可能)。
同样在这里。尝试了其他所有方法,最后 blue.sky.or.jp 救了我。谢谢。
D
Don Werve

问题是 Ubuntu 上的 Ruby 不是针对 zlib 构建的。您需要进行源代码构建来安装 Ruby。您可以使用 apt-get source -b ruby


好的,再次,linux noob。不知道你刚才说了什么。哈哈。我的意思是,我理解命令;但在那之后我该怎么办?
好吧,现在,即使那么多也没有用。我收到“构建命令 'cd ruby-defaults-4.2 && dpkg-buildpackage -b -uc' 失败”错误
n
nkassis

您是否尝试过 apt-get install libzlib-ruby?

还要从 rubyforge 安装 rubygems。我不喜欢 Ubuntu 中的 rubygems 包。


T
Tryst

在 Debian(挤压)上:

libruby 包含用于 ruby 的 zlib 以及使 ruby 在 Debian 上正常工作所需的所有其他东西。所以...

apt-get install libruby

然后...

cd /usr/local/src/ruby
make clean
make
make install
cd ../rubygems
ruby setup.rb
gem install rails

这使它对我有用,但是您的里程可能会有所不同。在发现所需的一切都被 libruby 覆盖之前,我对 zlib 做了一个轻微的霰弹枪方法。


M
Maran

您可以尝试在 phusion 站点上下载 ruby 企业 deb 软件包。并通过包安装乘客。按照说明 here。或者您可以尝试找到 here 的 bash 脚本。


h
harm

在运行 Rails 时,我不建议使用 Ruby 1.8.8dev。坚持使用 1.8.6,最好是 Ruby 企业版。请参阅 RailsLab 上的这篇文章,看看其他人正在使用什么。

如果您坚持使用高科技,请安装 Ruby 1.9.1。

但在这两种情况下,您都可以自己构建它或使用 Marans 的建议。


这是一个不好的建议,不要将 1.9.1 与 rails 一起使用。不过,1.9.2+ 可以正常工作。
该评论是在 2 年前发布的……当然,现在 1.9.3 将是要走的路。
当然,我很好。但重要的是有人知道这是错误的。

关注公众号,不定期副业成功案例分享
关注公众号

不定期副业成功案例分享

领先一步获取最新的外包任务吗?

立即订阅