Upgrading Ruby on Redhat EL4 for Ruby on Rails Development

This article will take approx 1 minute to read.

We don’t typically use Ruby on Rails in house. Up until recently, I was the dev guy as well as the server guy, the support guy and all the other hats I wear. Since I don’t do Rails development, there was no reason to get it setup. Recently, with the addition of Gary to the b5media team, Rails development became something we do. So I set about configuring the servers for Rails projects (first time for me!) and discovered that Red Hat Enterprise Linux 4 only ships with Ruby 1.8.1. 1.8.2 is needed for Rails.

Nice. The easiest way I found to upgrade to a newer version of Ruby without going through extreme dependency hell, was to follow this really short procedure:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[root@server ~]# cd /tmp
[root@server /tmp]# wget http://dev.centos.org/centos/4/testing/i386/RPMS/ruby-1.8.5-1.el4.centos.i386.rpm
[root@server /tmp]# wget http://dev.centos.org/centos/4/testing/i386/RPMS/ruby-libs-1.8.5-1.el4.centos.i386.rpm
[root@server tmp]# rpm -e ruby
[root@server tmp]# rpm -Uvh ruby-libs-1.8.5-1.el4.centos.i386.rpm
warning: ruby-libs-1.8.5-1.el4.centos.i386.rpm: V3 DSA signature: NOKEY, key ID 7203f491
Preparing...                ########################################### [100%]
   1:ruby-libs              ########################################### [100%]
[root@server tmp]# rpm -Uvh ruby-1.8.5-1.el4.centos.i386.rpm
warning: ruby-1.8.5-1.el4.centos.i386.rpm: V3 DSA signature: NOKEY, key ID 7203f491
Preparing...                ########################################### [100%]
   1:ruby                   ########################################### [100%]
[root@server tmp]# ruby -v
ruby 1.8.5 (2006-08-25) [i386-linux]
[root@server tmp]#

This routine downloads the ruby libs 1.8.5 and ruby 1.8.5 RPMs from the CentOS testing repository. It then removes the ruby 1.8.1 library (

1
rpm -e

) along with dependencies. This step is done to avoid problems installing the new version.

Pretty standard stuff, but navigating the treacherous waters of RPM and dependencies is something I don’t mind helping someone avoid.

Comments

  1. Eric Coleman says

    I had trouble using those rpm’s and getting certain gems working. I ended up removing the ruby rmps totally and custom compiling. It’s real quick and easy.

  2. says

    As I mentioned, I don’t do any Rails development and I just did this. Time will tell if Gary runs into problems. Problem with compiling is that I almost always run into dependency issues and I hate trying to solve them. :)

  3. Eric Coleman says

    Just because you don’t do rails development doesn’t mean you don’t do ruby development ;)

    I use ruby in a few other projects, but I haven’t actually played with rails ;)

  4. says

    Heh, you know RPM can take a URL instead of a file name?

    FWIW, installing out of CentOS is a good thing for RHAS users, it’s binary compatible with RHAS. At worst you grab the .srpm and rpmbuild –rebuild it locally.

    Sean