rbenv - ArchWiki

# rbenv

From ArchWiki
Jump to navigation Jump to search

Related articles

- RVM
- Chruby
- Ruby

rbenv (Simple Ruby Version Management) lets you easily switch between multiple versions of Ruby. It's simple, unobtrusive, and follows the UNIX tradition of single-purpose tools that do one thing well.

Another tool to be used for the same purpose is RVM.

## Installation

Install the rbenvAUR package.

## Plugins

rbenv can be extended via a plugin system, and the rbenv wiki includes a list of useful plugins. The ruby-build plugin is especially useful, as it allows you to install Ruby versions with the `rbenv install` command. You can install ruby-buildAUR from the AUR.

## Troubleshooting

### Ruby 2.3.x

Before compiling, make sure you have all the dependencies needed:

     pacman -S --needed base-devel libffi libyaml openssl zlib

Installation of Ruby 2.3.x may break down due to openssl version described here:

- https://stackoverflow.com/questions/44116005/openssl-error-installing-ruby-2-1-x-and-2-3-x-on-archlinux-with-ruby-install-rub

     ossl_ssl.c:465:38: error: ‘CRYPTO_LOCK_SSL_SESSION’ undeclared

Here's a way how you can make a ruby compile:

1. Install the openssl-1.0 package first.

2. Then run:

     PKG_CONFIG_PATH=/usr/lib/openssl-1.0/pkgconfig \
     rbenv install 2.3.4

### Ruby 2.x.x

Installation of Ruby 2.0.0, 2.1.4, 2.1.6, 2.1.7, 2.2.2 and 2.2.3 may show this error

     ossl_ssl.c:141:27: error: ‘SSLv3_method’ undeclared here (not in a function)

This can be solved using the patch as described here

     curl -fsSL https://gist.github.com/mislav/055441129184a1512bb5.txt | PKG_CONFIG_PATH=/usr/lib/openssl-1.0/pkgconfig rbenv install --patch 2.2.3

### Ruby 1.9.3

Installation of Ruby 1.9.3 may show the same error:

     ossl_ssl.c:116:27: error: ‘SSLv3_method’ undeclared here (not in a function)

This can be solved by using the patch as described here

     curl -fsSL https://gist.githubusercontent.com/anonymous/679228bc324d6fdd3074.txt | rbenv install --patch 1.9.3-p448

If above was not enough you can install openssl-1.0 and gcc6 and try:

     curl -fsSL https://gist.githubusercontent.com/anonymous/679228bc324d6fdd3074.txt | CC=/usr/bin/gcc-6 PKG_CONFIG_PATH=/usr/lib/openssl-1.0/pkgconfig rbenv install --patch 1.9.3-p551

## External links

- Official web site

Category:

- Programming languages