Installation 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-3.3.0 &&
make
Optionally, build the CAPI documents by running the following
commands:
make capi
To test the results, issue: make -j1
-k check. Note that running the test suite with
parallel jobs may cause test failures outputted as cryptic
unknown object
messages,
resulting a summary falsely claiming “all tests passed”. If
the environment has variables related to proxy settings
(all_proxy
, ALL_PROXY
, http_proxy
,
and etc.) set, the test suite will bail out early with messages
like net/ftp is not found
. So
make sure unsetting them for the test suite. There are over 26,000
tests. 12 tests are known to fail because of expired certificates
in the test data. 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.
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, too (as the
root
user):
cd /path/to/web/app
bundle update rake
and 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.so
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-3.3.0, /usr/lib/ruby,
/usr/share/doc/ruby-3.3.0 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
|