Ubuntu rails install fails on zlib

Ruby on-RailsRubyRubygemsZlibUbuntu 8.10

Ruby on-Rails Problem Overview


I've just moved over to Ubuntu 8.10 as my dev box; it's my first serious foray into Linux as a daily-use OS, and I'm having a hard time getting Rails going. I have followed a number of tutorials which all seem to work fine, but when I try and use gem install or gem update on anything, I get an error that looks like this:

/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

I have (as recommended in the tutorials) installed zlib, zlib1g, and zlib1g-dev. I've even found a few tutorials on this particular problem (all for flavors other than mine, however) but they didn't help.

I'm on Ubuntu 8.10, ruby version 1.8.8dev gem version 1.3.2

I've tried reinstalling ruby and gems each and separately, to no avail.

Ruby on-Rails Solutions


Solution 1 - Ruby on-Rails

If you come across this question trying to install Ruby using Ruby Version Manager (RVM) on Ubuntu 10.04 then there are instructions on installing zlib on the rvm web site http://rvm.beginrescueend.com/packages/zlib/

The steps are:

rvm pkg install zlib

(or rvm package install zlib if you get "ERROR: Unrecognized command line argument: 'pkg'" - older versions of rvm used the verb 'package' instead)

then

rvm remove 1.9.1
rvm install 1.9.1

Solution 2 - Ruby on-Rails

I am using Ubuntu 10.04 (Lucid), i wanted to install ruby 1.9.2 because 1.9.1 is not recommended with Rails. So I downloaded the source for 1.9.2 and unzipped/unarchived it. my source distro is ruby-1.9.2-p0. After I unpacked it, I built zlib as follows:

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

that fixed the problem. This is similar to what other people posted above, but not exactly, so I figured I may as well post exactly what I did to get it going.

Solution 3 - Ruby on-Rails

I have the same problem in CentOS and fix it by executing the following command:

First, I ensure that zlib and zlib-devel exist (like many suggested above).

yum install zlib zlib-devel

Second, I recompiled and installed the sources of zlib that comes with ruby.

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

That commands seem to fix the problem, then I execute gem update --system and the error with zlib vanished. Then I install rails with gem install rails. Note to mention I had installed gem before, and after recompile and install zlib, I don't recompile neither install gem (actually I don't knew how uninstall it because I don't found a script to do that)

That works for me...hope to you to.

Regards.

Solution 4 - Ruby on-Rails

try

aptitude install zlib1g-dev

Then go about your business.

Solution 5 - Ruby on-Rails

I really didn't like any of these answers ... none really focused on the users actual needs and question ... just people telling what they did ... no context and it didn't even work for me ...

So, ..

I'm installing a new box Ubuntu 8.04 LTS 64-bit ...

So, I ...

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  

And then I have this problem with ...

gem list

it doesn't work ... something about zLib not found crap ...

So, I actually READ the README and find that I need to edit a file ...

[my ruby source directory]/ext/Setup

and UN-COMMENT the line with zLib in it ... by removing the "#" in the first column

Then I run the commands again ... included here for reference ...

./configure
make  
install  
sudo make install  

and all is well ... it's logical ... and is devoid of "rvm" and other ... "just install more stuff to make it work" type solutions.

Joet

Solution 6 - Ruby on-Rails

Just goto Ruby Source Package , Unzip it.

Goto /your-ruby-dir/ext/zlib

ruby extconf.rb
make
sudo make install

If the packages are missing it will tell you, mainly libzlib related packages

Regards

Saurabh

Solution 7 - Ruby on-Rails

rvm package install zlib
rvm remove 1.9.1
rvm install 1.9.1

That did it. After numerous wild goose chases, I'm glad I found this page.

Solution 8 - Ruby on-Rails

yes, and that didn't do the job either. Got this from another source, this finally did it for me where the other stuff failed.

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

Reinstall ruby gems from source

Thanks anyway, guys.

Solution 9 - Ruby on-Rails

The problem is that Ruby on Ubuntu isn't built against zlib; you'll want to do a source build to install Ruby. You can do this with apt-get source -b ruby

Solution 10 - Ruby on-Rails

Did you try apt-get install libzlib-ruby?

Also install rubygems from rubyforge. I don't like the rubygems package in Ubuntu.

Solution 11 - Ruby on-Rails

On Debian (Squeeze):

libruby contains zlib for ruby amongst all the other stuff you'll need to make ruby work properly on Debian. So...

apt-get install libruby

Then...

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

This made it work for me, but your mileage may vary. I did to a slight shotgun approach to zlib before finding that everything needed was covered by libruby.

Solution 12 - Ruby on-Rails

You could try to download the ruby enterprise deb package on the phusion site. And install passenger through the package. Follow the instructions here. Or you could try the bash script found here.

Solution 13 - Ruby on-Rails

When running Rails I would not recommend using Ruby 1.8.8dev. Stick with 1.8.6, preferably the Ruby Enterprise Edition. See this post on RailsLab what other people are using.

If you insist on going hi-tech, install Ruby 1.9.1.

But in both cases build it yourself or use Marans suggestion.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionPaulView Question on Stackoverflow
Solution 1 - Ruby on-RailsJosephLView Answer on Stackoverflow
Solution 2 - Ruby on-RailsAdrianVeidtView Answer on Stackoverflow
Solution 3 - Ruby on-RailsDanielView Answer on Stackoverflow
Solution 4 - Ruby on-RailsDanView Answer on Stackoverflow
Solution 5 - Ruby on-RailsKnowselfView Answer on Stackoverflow
Solution 6 - Ruby on-RailsSaurabhView Answer on Stackoverflow
Solution 7 - Ruby on-RailsRod McLaughlinView Answer on Stackoverflow
Solution 8 - Ruby on-RailsPaulView Answer on Stackoverflow
Solution 9 - Ruby on-RailsDon WerveView Answer on Stackoverflow
Solution 10 - Ruby on-RailsnkassisView Answer on Stackoverflow
Solution 11 - Ruby on-RailsTrystView Answer on Stackoverflow
Solution 12 - Ruby on-RailsMaranView Answer on Stackoverflow
Solution 13 - Ruby on-RailsharmView Answer on Stackoverflow