If you’re working on CentOS and need to install Ruby, there are a few ways to get it done. Whether you need the default version for simple tasks or want the latest release for a specific project, this guide has you covered. Let’s walk through the top three methods to install Ruby on CentOS.
Table of Contents
Method #1 – Install Ruby from CentOS Repositories
The easiest way to install Ruby on CentOS is through the system’s default repositories. While this method might not give you the latest version, it’s quick and gets the job done.
- Update your system packages using the
yum update
command. - Install Ruby by running
yum install ruby
. - Once that’s done, verify the installation with
ruby --version
.
This method is perfect for getting started quickly without worrying about compatibility issues.
Method #2 – Install Ruby Using RVM
RVM, or Ruby Version Manager, is an excellent tool if you need to install and manage multiple Ruby versions. It’s especially handy for developers working on projects that require specific Ruby versions.
- Start by installing necessary dependencies like
curl
,gcc
, andzlib-devel
. - Next, import the GPG keys required by RVM.
- Download and install RVM by running the installation script provided on the official site.
- After installation, load the RVM scripts by sourcing them into your shell.
- Use RVM to install Ruby. For instance, to install version 3.2.2, you’d use the command
rvm install 3.2.2
. - Set your installed Ruby version as the default by running
rvm use 3.2.2 --default
. - Finally, check if everything’s set up by running
ruby --version
.
RVM is a powerful tool if you want flexibility. You can switch between Ruby versions or upgrade seamlessly as needed.
Method #3- Install Ruby Using Rbenv
Rbenv is another tool you can use to install Ruby on CentOS. It’s lightweight and designed to give you control over Ruby versions without extra frills.
- Install dependencies like
git
,gcc
, andopenssl-devel
using your package manager. - Clone the Rbenv and Ruby-build repositories to your home directory.
- Update your environment variables by adding Rbenv to your PATH. You’ll need to update your
.bashrc
file and reload it to apply the changes. - Use Rbenv to install Ruby. For example, to get version 3.2.2, you’d use the
rbenv install 3.2.2
command. - Set this version as the default with
rbenv global 3.2.2
. - Confirm your setup is working by running
ruby --version
.
If you like things lightweight and minimal, Rbenv is a great choice. It lets you focus on the essentials without unnecessary complexity.
Which Method Should You Choose?
When deciding how to install Ruby on CentOS, think about what you need:
- Default Repositories: Best for a quick and straightforward setup.
- RVM: Ideal for managing multiple versions of Ruby on the same system.
- Rbenv: Great for a lightweight and hands-on approach to Ruby version management.
Each method has its perks, so pick the one that works best for your workflow.
Installing Ruby on CentOS doesn’t have to be complicated. Whether you go with the built-in package manager, RVM, or Rbenv, you’ll have Ruby up and running in no time. So dive in, choose the method that fits your needs, and start building something amazing with Ruby today!
The link above did not work for me. The one below did.
ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p330.tar.gz
Paul,
Thanks for the heads-up. I have updated the post with the correct link.
Well unfortunately this didn’t work out for me…
I got this during make install:
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb ./instruby.rb –make=”make” –dest-dir=”” –extout=”.ext” –mflags=”” –make-flags=”” –data-mode=0644 –prog-mode=0755 –installed-list .installed.list –mantype=”doc”
/bin/sh: ./miniruby: No such file or directory
make: *** [do-install-nodoc] Error 127
@Kat – Are you using CentOS 5.5? Can you try going through the steps one more time and let me know if you still see the error?
Nice. Thanks! If only life was always this copy&paste 🙂
Even after repeating the steps in centos 5.5 ,it does’t work.I meant I am getting same error like Kat is getting
This worked in compiling it but it still does not work in the correct path :
[root@hostname ruby-1.8.7-p330]# ruby -v
ruby 1.8.5 (2006-08-25) [x86_64-linux]
[root@hostname ruby-1.8.7-p330]# ./ruby -v
ruby 1.8.7 (2010-12-23 patchlevel 330) [x86_64-linux]
[root@hostname ruby-1.8.7-p330]# which ruby
/usr/local/bin/ruby
[root@hostname ruby-1.8.7-p330]# which ./ruby
./ruby
[root@hostname ruby-1.8.7-p330]#
@alainchiaasson Try running configure with the prefix tag set to the default path. /usr.
If you’ve ever used pirut or downloaded the rpm from the CentOS repos, then your gems and everything else expect ruby to be in /usr/bin, the libraries in /urr/lib and so on in that fashion.
The default location specified in the config file is to put everything in /usr/local which will sort of mostly work, but may cause you some grief if you don’t feel like putting in the whole path when running a ruby executable. The fix is as easy as running configure again with the expected prefix location, then make and make install again.
./configure –prefix=/usr –enable-shared –enable-pthread
make && sudo make install
Best of luck.
@jambino note that your command uses the wrong character ‘-‘. We need to re-type it ; no copy/paste.
Thank you for that piece of guide! It was a breeze walk through a park! In case…the current latest version is
v.1.9.3 as stable.
http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p392.tar.gz
just use this url and adjust the version in all lines in command for yum install.
Cheers
and dont forget this command line!
$ signal-event post-upgrade;
$ signal-event reboot;