glfs/general/prog/ruby.xml
Bruce Dubbs 7eaa80184a Update to sqlite-3.28.0.
Update to libcdio-2.1.0. 
Update to dhcpcd-7.2.0. 
Update to ruby-2.6.3. 
Update to libseccomp-2.4.1. 
Update to Linux-PAM-1.3.1. 



git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@21492 af4574ff-66df-0310-9fd7-8a98e5e911e0
2019-04-21 18:44:58 +00:00

287 lines
8.0 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY ruby-download-http "http://cache.ruby-lang.org/pub/ruby/&ruby-minor-version;/ruby-&ruby-version;.tar.xz">
<!ENTITY ruby-download-ftp " ">
<!ENTITY ruby-md5sum "60c8b3883cde410f8f8db374febdb0d8">
<!ENTITY ruby-size "11 MB">
<!ENTITY ruby-buildsize "414 MB (add 277 MB for C API docs)">
<!ENTITY ruby-time "1.2 SBU (using parallelism=4; add 3.6 SBU for tests; add 0.6 SBU for C API docs)">
]>
<sect1 id="ruby" xreflabel="Ruby-&ruby-version;">
<?dbhtml filename="ruby.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>Ruby-&ruby-version;</title>
<indexterm zone="ruby">
<primary sortas="a-Ruby">Ruby</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to Ruby</title>
<para>
The <application>Ruby</application> package contains the
<application>Ruby</application> development environment. This
is useful for object-oriented scripting.
</para>
&lfs84_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&ruby-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&ruby-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &ruby-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &ruby-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &ruby-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &ruby-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Ruby Dependencies</bridgehead>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="db"/>,
<xref linkend="doxygen"/>,
<xref linkend="graphviz"/>,
<xref linkend="libyaml"/>,
<xref linkend="tk"/>, and
<xref linkend="valgrind"/>
</para>
<para condition="html" role="usernotes">User Notes:
<ulink url="&blfs-wiki;/ruby"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of Ruby</title>
<para>
Install <application>Ruby</application> by running the following
command:
</para>
<screen><userinput>./configure --prefix=/usr \
--enable-shared \
--docdir=/usr/share/doc/ruby-&ruby-version; &amp;&amp;
make</userinput></screen>
<para>
Optionally, build the CAPI documents by running the following
commands:
</para>
<screen><userinput>make capi</userinput></screen>
<para>
To test the results, issue: <command>make check</command>. There are
over 20,000 tests. Some tests (up to 0.5 percent) may fail.
If the tests are run in a directory
that has a world writable component (e.g. /tmp) then several additional
tests may fail. Several jit (just-in-time) tests are known to fail.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<parameter>--enable-shared</parameter>: This switch enables building of
the <filename class="libraryfile">libruby</filename> shared library.
</para>
<para>
<option>--disable-install-doc</option>: This switch disables building and
installing rdoc indexes and C API documents.
</para>
<para>
<option>--disable-install-rdoc</option>: This switch disables building
and installing rdoc indexes.
</para>
<para>
<option>--disable-install-capi</option>: This switch disables building
and installing C API documents.
</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
erb, gem, irb, rake, rdoc, ri, and ruby
</seg>
<seg>
libruby.so and libruby-static.a
</seg>
<seg>
/usr/include/ruby-&ruby-minor-version;.0
/usr/lib/ruby,
/usr/share/doc/ruby-&ruby-version; and
/usr/share/ri
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="erb">
<term><command>erb</command></term>
<listitem>
<para>
is Tiny eRuby. It interprets a
<application>Ruby</application> code embedded text file.
</para>
<indexterm zone="ruby erb">
<primary sortas="b-erb">erb</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="gem">
<term><command>gem</command></term>
<listitem>
<para>
command for RubyGems - a sophisticated package manager for
<application>Ruby</application>.
</para>
<indexterm zone="ruby gem">
<primary sortas="b-gem">gem</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="irb">
<term><command>irb</command></term>
<listitem>
<para>
is the interactive interface for
<application>Ruby</application>.
</para>
<indexterm zone="ruby irb">
<primary sortas="b-irb">irb</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="rake">
<term><command>rake</command></term>
<listitem>
<para>
a make-like build utility for <application>Ruby</application>.
</para>
<indexterm zone="ruby rake">
<primary sortas="b-rake">rake</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="rdoc">
<term><command>rdoc</command></term>
<listitem>
<para>
generates <application>Ruby</application> documentation.
</para>
<indexterm zone="ruby rdoc">
<primary sortas="b-rdoc">rdoc</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="ri">
<term><command>ri</command></term>
<listitem>
<para>
displays documentation from a database on
<application>Ruby</application> classes, modules, and methods.
</para>
<indexterm zone="ruby ri">
<primary sortas="b-ri">ri</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="ruby-prog">
<term><command>ruby</command></term>
<listitem>
<para>
is an interpreted scripting language for quick
and easy object-oriented programming.
</para>
<indexterm zone="ruby ruby-prog">
<primary sortas="b-ruby">ruby</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libruby">
<term><filename role="libraryfile">libruby.so</filename></term>
<listitem>
<para>
contains the API functions required by <application>Ruby</application>.
</para>
<indexterm zone="ruby libruby">
<primary sortas="c-libruby">libruby.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>