Introduction to Ruby
        
        
          The Ruby package contains the
          Ruby development environment. This
          is useful for object-oriented scripting.
        
        
          This package is known to build and work properly using an LFS 12.3
          platform.
        
        
          Package Information
        
        
          
            - 
              
                Download (HTTP): https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.2.tar.xz
               
- 
              
                Download MD5 sum: 63a56b170246fcf0198a5eaba57dd46c
               
- 
              
                Download size: 16 MB
               
- 
              
                Estimated disk space required: 697 MB (with C API docs and
                tests)
               
- 
              
                Estimated build time: 1.0 SBU (with C API docs; add 0.5 SBU
                for tests; all with using parallelism=4)
               
 
        
          Ruby Dependencies
        
        
          Required
        
        
          libyaml-0.2.5
        
        
          Optional
        
        
          Doxygen-1.13.2, Graphviz-12.2.1,
          rustc-1.84.1, Tk-8.6.16, Valgrind-3.24.0,
          Berkeley
          DB (deprecated) and DTrace
        
        
          ![[Note]](../images/note.png) 
          
            Note
          
          
            An Internet connection is needed for some tests of this package.
            The system certificate store may need to be set up with make-ca-1.15 before testing this package.
          
         
       
      
        
          Installation of Ruby
        
        
          ![[Note]](../images/note.png) 
          
            Note
          
          
            If you have installed a package that provides a ruby gem, such as
            asciidoctor-2.0.23, 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-3.4.2 &&
make
        
          Optionally, build the CAPI documents by running the following
          commands:
        
        make capi
        
          To test the results, issue: make -k
          check. 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. Make
          sure that you unset these variables for the test suite.
        
        
          Now, as the root user:
        
        make install
        
          ![[Note]](../images/note.png) 
          
            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.4.0, /usr/lib/ruby,
              /usr/share/doc/ruby-3.4.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
                   |