How to install Rails on CentOS 5.2


I have installed CentOS 5.2 on my PC. Ruby 1.8.5 and Ruby-devel
packages are already installed. I have downloaded rubygems-1.3.1.tgz
package and installed it. Now I am trying to install Rails by the
command below:

gem install rails

But it gives me the following error:

ERROR: While executing gem … (Zlib::DataError)
incorrect header check

zlib and zlib-devel are already installed on my pc. I can install
other gems like hpricot etc. But still I cannot install rails.

Can somebody please guide me how can I install rails on CentOS?

Thank you,

Hi Paryank,

Though I have no direct solution for you, I think compile/install Ruby
1.8.7 may solve this problem, while ruby packages on CentOS is obsolete.


Thanks for your help. But it still does not work.

I have downloaded ruby source, compiled and installed. It still gives
the same error!

I do not understand what I am missing!

Here is what I have - it may be a little old now - from notes to get
our CentOS sever running.


  1. Install Ruby


tar -zxvf ruby-1.8.6.tar.gz
cd ruby-1.8.6
./configure --with-openssl-dir=/usr/lib/openssl
sudo make install

These MAY not be needed. Come back and do them if things don’t go
right in install ruby gems and rails.
1a) zlib support
cd ruby-1.8.6
ruby extconf.rb --with-zlib-include=/usr/include --with-zlib-lib=/usr/
sudo make install

1b) openssl
cd ruby-1.8.6/ext/openssl
ruby extconf.rb
sudo make install

  1. Install ruby gems
    tar -zxvf rubygems-0.9.5.tgz
    cd rubygems-0.9.5
    sudo ruby setup.rb config
    sudo ruby setup.rb setup
    sudo ruby setup.rb install

  2. Install Rails:
    sudo gem install --version ‘2.1.0’ rails --include-dependencies

  3. Install Mongrel
    sudo gem install mongrel mongrel_cluster

Here is what I have to prep the box - this may not apply as it depends
on your install, but maybe you can look through here and see.


  1. As root:
    rpm -i
    rpm -i
    rpm -i
    rpm -i
    rpm -i
    rpm -i
    rpm -i
    rpm -Uvh
    rpm --import

  2. install gcc
    sudo yum install -y gcc

  3. install wget
    sudo yum install -y wget

  4. install various other things that came up!
    sudo yum install -y fedora-rpmdevtools – not found/needed
    sudo yum install -y openssl-devel
    sudo yum install -y zlib zlib-devel
    sudo yum install -y libjpeg-devel libpng-devel glib2-devel fontconfig-
    devel zlib-devel libwmf-devel freetype-devel libtiff-devel
    sudo yum install -y cabextract – not found
    sudo yum install -y pcre-devel
    sudo yum install -y subversion
    sudo yum install -y readline-devel

Create a file in $HOME called .rpmmacros with the following line in it
%_topdir %(echo $HOME)/rpmbuild
create the directories $HOME/rpmbuild/BUILD and $HOME/rpmbuild/RPMS/

  1. cabextract
    sudo rpm -ihv cabextract-1.1-2.i386.rpm

  2. get ssh keys in place

Thanks phil,

But I still have the same error.

I have removed my existing ruby package by:

yum remove ruby

And then followed the steps you have mentioned. But when I run command
to install rails first it try to update rubygems. It was taking very
long time. So I have updated rubygems by the following command:

gem update --system

After gem is successfully updated, I tried again to install rails. But
it was giving the same error again:

ERROR: While executing gem … (Zlib::DataError)
incorrect header check

Messed up my link. Here:

I have a pretty good step by step on setting up rails on a GoDaddy
CentOS server: Setting
up Rails on CentOS

This uses passenger. Hope it helps!