mirror of
https://github.com/Zeckmathederg/glfs.git
synced 2025-02-12 15:15:14 +08:00
If using this option, the build system uses a newly built version of ruby instead of the installed version of ruby, if it is already installed. This is worth documenting.
367 lines
10 KiB
XML
367 lines
10 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 "https://cache.ruby-lang.org/pub/ruby/&ruby-minor-version;/ruby-&ruby-version;.tar.xz">
|
|
<!ENTITY ruby-download-ftp " ">
|
|
<!ENTITY ruby-md5sum "169bbbd82b7ced3d39a4be36f50db459">
|
|
<!ENTITY ruby-size "14 MB">
|
|
<!ENTITY ruby-buildsize "574 MB (add 547 MB for C API docs)">
|
|
<!ENTITY ruby-time "1.3 SBU (using parallelism=4; add 5.0 SBU for tests; add 0.5 SBU for C API docs)">
|
|
]>
|
|
|
|
<sect1 id="ruby" xreflabel="Ruby-&ruby-version;">
|
|
<?dbhtml filename="ruby.html"?>
|
|
|
|
|
|
<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>
|
|
|
|
&lfs112_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"/>,
|
|
<xref linkend="valgrind"/>, and
|
|
<ulink url="http://dtrace.org/blogs/about/">DTrace</ulink>
|
|
</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; &&
|
|
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
|
|
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.
|
|
</para>
|
|
<!-- With 3.0.2:
|
|
Finished tests in 443.541527s, 47.5739 tests/s, 6031.9921 assertions/s.
|
|
21101 tests, 2675439 assertions, 4 failures, 1 errors, 45 skips
|
|
|
|
with 3.2.0 there are several summaries:
|
|
* PASS all 1789 tests
|
|
* Finished tests in 6.815561s, 45.6309 tests/s, 264.2482 assertions/s.
|
|
311 tests, 1801 assertions, 0 failures, 0 errors, 12 skips
|
|
* Finished tests in 462.613063s, 50.5649 tests/s, 12069.0885 assertions/s.
|
|
23392 tests, 5583318 assertions, 3 failures, 0 errors, 79 skips
|
|
-->
|
|
|
|
<para>
|
|
Now, as the <systemitem class="username">root</systemitem> user:
|
|
</para>
|
|
|
|
<screen role="root"><userinput>make install</userinput></screen>
|
|
|
|
<note>
|
|
<para>
|
|
If you have Ruby-On-Rails applications installed and did an
|
|
upgrade of <application>Ruby</application> by installing this
|
|
package, you might need to run an update there, too
|
|
(as the &root; user):
|
|
</para>
|
|
|
|
<screen role="nodump"><userinput>cd /path/to/web/app
|
|
bundle update rake</userinput></screen>
|
|
|
|
<para>
|
|
and restart the webserver which serves the application.
|
|
</para>
|
|
|
|
</note>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="commands">
|
|
<title>Command Explanations</title>
|
|
|
|
<para>
|
|
<parameter>--enable-shared</parameter>: This switch enables building
|
|
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>
|
|
|
|
<para>
|
|
<option>--without-baseruby</option>: This switch prevents using the
|
|
system <command>ruby</command> if it is already installed. The build
|
|
system will use the newly built version instead.
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="content">
|
|
<title>Contents</title>
|
|
|
|
<segmentedlist>
|
|
<segtitle>Installed Programs</segtitle>
|
|
<segtitle>Installed Libraries</segtitle>
|
|
<segtitle>Installed Directories</segtitle>
|
|
|
|
<seglistitem>
|
|
<seg>
|
|
bundle,
|
|
bundler,
|
|
erb,
|
|
gem,
|
|
irb,
|
|
racc,
|
|
rake,
|
|
rbs,
|
|
rdbg,
|
|
rdoc,
|
|
ri,
|
|
ruby, and
|
|
typeprof
|
|
</seg>
|
|
<seg>
|
|
libruby.so
|
|
</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="bundle">
|
|
<term><command>bundle</command></term>
|
|
<listitem>
|
|
<para>
|
|
creates bundles of Ruby Gems
|
|
</para>
|
|
<indexterm zone="ruby bundle">
|
|
<primary sortas="b-bundle">bundle</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="bundler">
|
|
<term><command>bundler</command></term>
|
|
<listitem>
|
|
<para>
|
|
manages an application's dependencies throughout it's lifecycle
|
|
</para>
|
|
<indexterm zone="ruby bundler">
|
|
<primary sortas="b-bundler">bundler</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="erb">
|
|
<term><command>erb</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a command line front-end for eRuby, which provides a templating
|
|
system for <application>Ruby</application>
|
|
</para>
|
|
<indexterm zone="ruby erb">
|
|
<primary sortas="b-erb">erb</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="gem">
|
|
<term><command>gem</command></term>
|
|
<listitem>
|
|
<para>
|
|
is the command for RubyGems, which is a sophisticated package
|
|
manager for <application>Ruby</application>. This is similar
|
|
to Python's 'pip' command
|
|
</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>
|
|
is 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="rdbg">
|
|
<term><command>rdbg</command></term>
|
|
<listitem>
|
|
<para>
|
|
is an interactive debugger for <application>Ruby</application>
|
|
</para>
|
|
<indexterm zone="ruby rdbg">
|
|
<primary sortas="b-rdbg">rdbg</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>
|