Upgrading Ruby on Redhat EL4 for Ruby on Rails Development

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.

Published by

Aaron Brazell

Aaron Brazell is a Baltimore, MD-based WordPress developer, a co-founder at WP Engine, WordPress core contributor and author. He wrote the book WordPress Bible and has been publishing on the web since 2000. You can follow him on Twitter, on his personal blog and view his photography at The Aperture Filter.

6 thoughts on “Upgrading Ruby on Redhat EL4 for Ruby on Rails Development”

  1. 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. 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. 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. 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

Comments are closed.