Ruby-3.2.2

Introduction to Ruby

The Ruby package contains the Ruby development environment. This is useful for object-oriented scripting.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

  • Download (HTTP): https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.2.tar.xz

  • Download MD5 sum: 377853f31d10bfe37c58b8537fc3e05d

  • Download size: 14 MB

  • Estimated disk space required: 694 MB (add 1.0 GB for C API docs)

  • Estimated build time: 1.2 SBU (using parallelism=4; add 4.6 SBU for tests; add 0.6 SBU for C API docs)

Ruby Dependencies

Required

libyaml-0.2.5

Optional

Berkeley DB-5.3.28, Doxygen-1.9.6, Graphviz-8.0.5, rustc-1.69.0, Tk-8.6.13, Valgrind-3.21.0, and DTrace

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/ruby

Installation of Ruby

If you wish to run the tests after installing this package, fix a problem that results in a crash during the test suite, due to an undefined variable:

sed -i '283d' tool/lib/leakchecker.rb

Install Ruby by running the following command:

./configure --prefix=/usr      \
            --enable-shared    \
            --without-valgrind \
            --without-baseruby \
            --docdir=/usr/share/doc/ruby-3.2.2 &&
make

Optionally, build the CAPI documents by running the following commands:

make capi

The tests require that the new version of Ruby is already installed to run correctly. If you want to run the tests, execute them after installing the package.

Now, as the root user:

make install

To test the results, issue: make check. There are over 25,000 tests. Some tests related to ipv6 may indicate errors. If the tests are run in a directory that has a world writable component (e.g. /tmp) then several additional tests may fail. A few tests may fail due to system configuration expectations.

[Note]

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, too (as the root user):

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

and restart the webserver which serves the application.

Command Explanations

--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.

--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-3.2.0, /usr/lib/ruby, /usr/share/doc/ruby-3.2.2 and /usr/share/ri

Short Descriptions

bundle

creates bundles of Ruby Gems

bundler

manages an application's dependencies throughout it's lifecycle

erb

is a command line front-end for eRuby, which provides a templating system for Ruby

gem

is the command for RubyGems, which is a sophisticated package manager for Ruby. This is similar to Python's 'pip' command

irb

is the interactive interface for Ruby

rake

is a make-like build utility for Ruby

rdbg

is an interactive debugger for Ruby

rdoc

generates Ruby documentation

ri

displays documentation from a database on Ruby classes, modules, and methods

ruby

is an interpreted scripting language for quick and easy object-oriented programming

libruby.so

contains the API functions required by Ruby