RUBY-BUILD(1)
=============
:doctype: manpage

NAME
----
ruby-build - utility to compile and install Rubies

SYNOPSIS
--------
*ruby-build* ['OPTIONS'...] 'DEFINITION' 'PREFIX'

*ruby-build --definitions*

*ruby-build --version*

*ruby-build* [*-h*|*--help*]

*rbenv install* ['OPTIONS'...] ['DEFINITION']

*rbenv install* [*-l*|*--list*]

*rbenv uninstall* [*-f*|*--force*] 'DEFINITION'

DESCRIPTION
-----------
*ruby-build* provides a simple way to compile and install different
versions of Ruby on UNIX-like systems.

ruby-build downloads, builds and installs the Ruby version specified
in a 'DEFINITION' into a 'PREFIX' directory. Definitions can be chosen
from the list of installed definitions or by specifying a file path
for a definition.

rbenv(1) users can also use the provided *rbenv install*
command, which installs Rubies into the `rbenv` directory.

OPTIONS
-------
*--definitions*::
  List available definitions.

*-f*, *--force*::
  When using *rbenv-install*, force installation of Ruby versions that
  are already installed. When using *rbenv-uninstall*, uninstall
  without prompting for confirmation or displaying an error message
  for Rubies that are not currently installed.

*-k*, *--keep*::
  Don't delete source code after installation.

*-p*, *--patch*::
  Apply a patch from standard input to the Ruby, JRuby or Rubinius
  source code before executing the `./configure` step.

*-v*, *--verbose*::
  Display compiler messages on standard output.

*--version*::
  Show `ruby-build` version and exit.

*-h*, *--help*::
  Show usage information and exit.

EXAMPLES
--------
Install Ruby 2.0.0 (MRI, patch level 0) to `~/rubies/mri-2.0.0`:

  ruby-build 2.0.0-p0 ~/rubies/mri-2.0.0

Install Ruby Enterprise Edition 1.8.7 (patch level 2011.03) for rbenv(1):

  rbenv install ree-1.8.7-2011.03

Install local app-specific Ruby version:

  rbenv install

Install Ruby from a custom definition into `~/your-ruby`:

  rbenv install /path/to/your/own/ruby/definition ~/your-ruby

Install Ruby 2.0.0-p0, applying the patch in `/path/to/some.patch`:

  rbenv install --patch 2.0.0-p0 < /path/to/some.patch

ENVIRONMENT
-----------
*CC*::
  Sets the path to the C compiler.

*CONFIGURE_OPTS*::
  Options that are passed to `./configure` when building a Ruby.

*MAKE*::
  Sets the command used for `make`.

*MAKE_OPTS*::
  Options that are passed to `make` when building a Ruby.

*MAKEOPTS*::
  Used instead of *MAKE_OPTS* when *MAKE_OPTS* is not defined.

*RUBY_BUILD_BUILD_PATH*::
  Sets the location in which sources are downloaded and built.

*RUBY_BUILD_CACHE_PATH*::
  Sets the location where downloaded package files are cached.

*RUBY_BUILD_DEFINITIONS*::
  Adds a colon-separated list of directories to the build definition
  path.

*RUBY_BUILD_MIRROR_URL*::
  Sets the root URL of the mirror from which package files are
  downloaded.

*RUBY_BUILD_ROOT*::
  If set, overrides the default location from where build definitions
  in `share/ruby-build/` are looked up.

*RUBY_BUILD_SKIP_MIRROR*::
  If set, forces `ruby-build` to download packages from their
  original source URLs instead of using a mirror.

*RUBY_CFLAGS*::
  Options that are added to the default `CFLAGS` when building a Ruby.

*RUBY_CONFIGURE_OPTS*::
  Options that are passed to `./configure` when building a Ruby. In
  contrast to *CONFIGURE_OPTS*, these are only passed to Ruby and not
  to any dependent packages (such as `libyaml`).

*RUBY_MAKE_OPTS*::
  Options that are passed to `make` when building a Ruby. In contrast
  to *MAKE_OPTS*, these are only passed to Ruby and not to any
  dependent packages (such as `libyaml`).

*TMPDIR*::
  Sets the location where `ruby-build` stores temporary files.

AUTHORS
-------
ruby-build is developed by Sam Stephenson <\sam@37signals.com>.

This man page was written for the Debian GNU/Linux distribution by
Sebastian Boehm <\sebastian@sometimesfood.org> but may be used by
others.

SEE ALSO
--------
rbenv(1)
