Ruby and Gems related Issues

I have been working on various technologies from the past 2 years. Just a couple of months ago , my friend Paul has suggested me to pick up my speed on ruby and ruby on rails as he’s got a few projects coming and likes me to work on them.

This is probably the third time i have installed linux ubuntu on my computer as i kept fiddling with Virtual machine and actual installation. First two of my installation experiences were as bad as it was this time. could never get anything working on the first try which im trying to install ruby. Various situations where things got messed up. 

So i decided to write a few guidelines to all those who started learning ruby and ROR(ruby on rails).

if you are at the learning phase, i’d suggest you to install using the source with the latest source which you can find at  http://rubyinstaller.org/downloads/ Ruby Installer Page . This way you dont have to worry about RVM and installing packages and gems depending on RVM. 

Download the source file and extract it in a location. Make sure GCC is already installed. you can install it by typing this on the console 

apt-get install gcc

then go to the location of the ruby install files.

sudo ./configure

sudo make

sudo make install

I would suggest you to use sudo because there are a few files which requires permissions during the installation.

After ruby installation is complete , check if ruby commands are working on the console. to do this type

ruby -v

This returns the details of the ruby version install on your computer

Then go to ruby gems http://rubygems.org/pages/download website and install rubygems through console by typing . 

sudo ruby setup.rb 

To check if gems have been installed successfully type

gems

this is return a few functions available to perform using gems.

If these steps are done, let proceed further and install the latest ruby on rails gem 

type the command 

gem install rails 

If it has been installed successfully then all the required libraries have already been installed. But with me this dint happen. I got this error

ERROR:  Loading command: update (LoadError)

    no such file to load — zlib

ERROR:  While executing gem … (NameError)

    uninitialized constant Gem::Commands::UpdateCommand

I spend more than 2 hours looking for the solution and finally got the solution in a forum. 

Why did it return this error ? 

Ruby and Ruby gems depend upon a compression library called zlib which manages the compression and decompression of most of the files. 

Normally ruby installs this library during the installation but sometimes it skips it - i am expecting it to be a mess up in the control flow.

What to do now ?

Lets make sure we have this library first .

sudo apt-get install zlib1g-dev

Once it has been installed lets tell our ruby that it has been installed now so she can use it for its operations. to do that go to the ruby installation files . In my case i am using ruby-1.9.3-p0 and it is at 

raven@raven-VirtualBox:~/Desktop/ruby-1.9.3-p0$ 

navigate to the folder /ext/zlib . to do that type 

cd ext

cd zlib

now lets re install this module.

 sudo ruby extconf.rb

A make file will be generated for this module separately . So lefts finish the installation. 

sudo make

sudo make install

Voila ! ! Its finally done. we wont be having the issues related to zlib anymore. 

to check it , lets try to install rails gem again with the command mentioned above

In case you have anymore issue with the gem installation because of ssl like 

 no such file to load — openssl 

Follow the same procedure we used for zlib. navigate to /ext/openssl in my case it is 

 

raven@raven-VirtualBox:~/Desktop/ruby-1.9.3-p0/ext/openssl$ 

 

then install this module separately by 

sudo ruby extconf.rbsudo makesudo make install

Now we’re finally done with installing zlib and openssl. these 2 libraries have caused most of the issues i faced during my installation. 
Hope it helped you as well 

Cheers ! 

Vivek Sampara