RUBY-BUILD(1)

NAME
ruby-build - Download, compile, and install a version of Ruby

SYNOPSIS

ruby-build [-dvpk] <definition> <prefix> [-- <configure-args>...]
ruby-build {--list|--definitions}
ruby-build --version

DESCRIPTION

ruby-build downloads, compiles, and installs a Ruby version named by the definition argument into the location specified by prefix.

The definition argument can optionally start with "ruby-", in which case it resolves to a CRuby that matches the version number that follows.

The definition argument can be a path to a file on disk, in which case it is sourced into ruby-build as a bash script.

Optionally, extra Ruby configure-args may be listed after "--" and will get forwarded to the ./configure invocation.

By default, all compile output is redirected to a log file at $TMPDIR/ruby-build.*.log. Activate the verbose mode to skip the log file and print everything to standard streams.

OPTIONS

-l, --list
    List latest stable releases for each Ruby

--definitions
    List all local definitions, including outdated ones

--version
    Show version of ruby-build

-d, --dir
    Install the Ruby in the prefix/definition destination instead of directly in prefix

-v, --verbose
    Verbose mode: forward all build output to stdout/stderr

-p, --patch
    Apply a patch from stdin before building

-k, --keep
    Do not remove source tree after installation

-4, --ipv4
    Resolve names to IPv4 addresses only

-6, --ipv6
    Resolve names to IPv6 addresses only

EXAMPLES

Install a Ruby version while tweaking some configuration options:

    $ ruby-build 3.2.2 /path/to/destination -- --disable-install-doc --with-openssl-dir=/opt/openssl

Install a Ruby version to ~/.rubies/ruby-3.2.2:

    $ ruby-build --dir ruby-3.2.2 ~/.rubies

Install a Ruby version to ~/.rbenv/versions/3.3.5:

    $ ruby-build --dir 3.3.5 ~/.rbenv/versions

Usage as rbenv plugin, accomplishes the same as the previous example:

    $ rbenv install 3.3.5

ENVIRONMENT VARIABLES

TMPDIR
    The location to write temporary files on disk

RUBY_BUILD_BUILD_PATH (default: a timestamped subdirectory of TMPDIR)
    The build location for downloading source files to and compiling

RUBY_BUILD_CACHE_PATH (default: "~/.rbenv/cache" if invoked as rbenv plugin)
    Where to cache downloaded package files

RUBY_BUILD_HTTP_CLIENT (default: first tool found in PATH)
    One of "aria2c", "curl", or "wget" to use for downloading

RUBY_BUILD_ARIA2_OPTS
    Additional options to pass to aria2c for downloading

RUBY_BUILD_CURL_OPTS
    Additional options to pass to curl for downloading

RUBY_BUILD_WGET_OPTS
    Additional options to pass to wget for downloading

RUBY_BUILD_MIRROR_URL (default: a sponsored Amazon CloudFront mirror)
    Custom mirror URL root to download packages from

RUBY_BUILD_MIRROR_PACKAGE_URL
    Custom complete mirror URL

RUBY_BUILD_SKIP_MIRROR
    Bypass the download mirror and fetch all package files from their original URLs

RUBY_BUILD_ROOT (default: "share/ruby-build" within ruby-build install location)
    Custom build definition directory

RUBY_BUILD_TARBALL_OVERRIDE
    Override the URL to fetch the ruby tarball from, optionally followed by "#<checksum>"

RUBY_BUILD_DEFINITIONS
    Paths to search for build definitions in addition to RUBY_BUILD_ROOT

CC
    Path to the C compiler

RUBY_CFLAGS
    Additional CFLAGS options to use for Ruby compilation

CONFIGURE_OPTS
    Additional "./configure" arguments

MAKE (default: "make")
    Custom make command (e.g., "gmake")

MAKE_OPTS, MAKEOPTS
    Additional arguments for "make"

MAKE_INSTALL_OPTS
    Additional arguments for "make install"

RUBY_CONFIGURE_OPTS
    Additional "./configure" arguments that apply only to Ruby source

RUBY_MAKE_OPTS
    Additional make arguments that apply only to Ruby source

RUBY_MAKE_INSTALL_OPTS
    Additional "make install" arguments that apply only to Ruby source

NO_COLOR (default: allow colors when connected to terminal)
    Disable ANSI colors in output

CLICOLOR_FORCE
    Use ANSI colors in output even when not connected to a terminal

NOTES

    •

    •

    •

AUTHOR

Mislav Marohnić