Ruby-4.0.1

#### Gaming Linux® From Scratch - Version 13.0

### Chapter 6. Tooling

- Prev

  PyYAML-6.0.3

- Next

  Audio

- Up
- Home

# Ruby-4.0.1

## Introduction to Ruby

The Ruby package provides a development environment and interpreter for the Ruby scripting language.

### Note

This may take a while to build. Feel free to do something else while this is building.

- Download: https://cache.ruby-lang.org/pub/ruby/4.0/ruby-4.0.1.tar.xz

### Ruby Dependencies

Required
libyaml-0.2.5

## Installation of Ruby

### Note

If you have installed a package that provides a Ruby gem, you must reinstall those packages when upgrading to a new minor version of Ruby.

Install Ruby by running the following command:

    ./configure --prefix=/usr         \
                --disable-rpath       \
                --enable-shared       \
                --without-valgrind    \
                --without-baseruby    \
                ac_cv_func_qsort_r=no \
                --docdir=/usr/share/doc/ruby-4.0.1 &&
    make

Now, as the `root` user:

    make install

### Note

If you have Ruby-On-Rails applications installed and did an upgrade of Ruby by installing this package, you might need to run an update there as the `root` user:

    cd /path/to/web/app
    bundle update rake

You should restart the webserver which serves the application.

## Command Explanations

`--disable-rpath`: This switch disables embedding `/usr/lib` as a library search path into the ruby program. Doing so is not needed (because `/usr/lib` is a system library path) and it may cause the test suite running with the system `libruby` instead of the just built one when Ruby has been installed.

`--enable-shared`: This switch enables building the `libruby` shared library.

`--without-baseruby`: This switch prevents using the system ruby if it is already installed. The build system will use the newly built version instead.

`ac_cv_func_qsort_r=no`: This switch prevents using the `qsort_r` function from Glibc. Ruby makes some aggressive optimization assuming some implementation details of the sorting algorithm, but the assumption is not true with the Glibc implementation. With this switch Ruby will use its own sort implementation instead.

`--disable-install-doc`: This switch disables building and installing rdoc indexes and C API documents.

`--disable-install-rdoc`: This switch disables building and installing rdoc indexes.

`--disable-install-capi`: This switch disables building and installing C API documents.

## Contents

Installed Programs: bundle, bundler, erb, gem, irb, racc, rake, rbs, rdbg, rdoc, ri, ruby, and typeprof
Installed Libraries: libruby.so
Installed Directories: /usr/include/ruby-4.0.0, /usr/lib/ruby, /usr/share/doc/ruby-4.0.1 and /usr/share/ri

### Short Descriptions

ruby | is an interpreter for the Ruby scripting language
`libruby` | contains the API functions required by Ruby

- Prev

  PyYAML-6.0.3

- Next

  Audio

- Up
- Home