Skip to content
Shannon Skipper edited this page Dec 22, 2024 · 93 revisions

CRuby or MRI (Matz's Ruby Implementation), is the defacto Ruby and sets the standards for other Ruby implementations.

Requirements

Operating System Command
Debian / Ubuntu
sudo apt install -y build-essential bison zlib1g-dev libyaml-dev libssl-dev libreadline-dev libffi-dev
RedHat / Fedora
sudo dnf install -y gcc automake bison zlib-devel libyaml-devel openssl-devel readline-devel libffi-devel
openSUSE
sudo zypper install gcc automake bison libffi-devel libyaml-devel openssl-devel readline-devel zlib-devel
Arch Linux
sudo pacman -S gcc make bison zlib openssl readline libyaml libffi
FreeBSD
sudo pkg install bison libffi libyaml openssl readline
NetBSD
sudo pkgin -y install bison libffi libyaml openssl readline
macOS
brew install bison gmp jemalloc libffi libyaml openssl readline zlib
Alpine Linux
sudo apk add gcc g++ make linux-headers zlib-dev openssl-dev readline-dev

Installation

wget https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.6.tar.xz
tar -xJvf ruby-3.3.6.tar.xz
cd ruby-3.3.6
./configure --prefix=/opt/rubies/ruby-3.3.6
make
sudo make install

Note: macOS users must properly specify ./configure --with-openssl-dir=... --with-opt-dir=... to compile Ruby against Homebrew's packages:

curl https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.6.tar.xz | tar -x
cd ruby-3.3.6
./configure \
    --prefix="$HOME/.rubies/ruby-3.3.6" \
    --with-gmp-dir="$(brew --prefix gmp)" \
    --with-libyaml-dir="$(brew --prefix libyaml)" \
    --with-openssl-dir="$(brew --prefix openssl)" \
    --with-readline-dir="$(brew --prefix readline)" \
    --with-zlib-dir="$(brew --prefix zlib)" \
    --with-opt-dir="$(brew --prefix jemalloc)" \
    --with-jemalloc
make
make install
Clone this wiki locally