source: general/prog/ruby.xml@ e59834d

12.0 12.1 kea ken/TL2024 ken/tuningfonts lazarus lxqt plabs/newcss python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since e59834d was 15445ab, checked in by Douglas R. Reno <renodr@…>, 15 months ago

Lots of tags

  • Property mode set to 100644
File size: 10.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY ruby-download-http "https://cache.ruby-lang.org/pub/ruby/&ruby-minor-version;/ruby-&ruby-version;.tar.xz">
8 <!ENTITY ruby-download-ftp " ">
9 <!ENTITY ruby-md5sum "23617540ad13c57ed8dd9d4ed32192a5">
10 <!ENTITY ruby-size "14 MB">
11 <!ENTITY ruby-buildsize "461 MB (add 1.3 GB for C API docs)">
12 <!ENTITY ruby-time "1.4 SBU (using parallelism=4; add 5.0 SBU for tests; add 0.8 SBU for C API docs)">
13]>
14
15<sect1 id="ruby" xreflabel="Ruby-&ruby-version;">
16 <?dbhtml filename="ruby.html"?>
17
18
19 <title>Ruby-&ruby-version;</title>
20
21 <indexterm zone="ruby">
22 <primary sortas="a-Ruby">Ruby</primary>
23 </indexterm>
24
25 <sect2 role="package">
26 <title>Introduction to Ruby</title>
27
28 <para>
29 The <application>Ruby</application> package contains the
30 <application>Ruby</application> development environment. This
31 is useful for object-oriented scripting.
32 </para>
33
34 &lfs113_checked;
35
36 <bridgehead renderas="sect3">Package Information</bridgehead>
37 <itemizedlist spacing="compact">
38 <listitem>
39 <para>
40 Download (HTTP): <ulink url="&ruby-download-http;"/>
41 </para>
42 </listitem>
43 <listitem>
44 <para>
45 Download (FTP): <ulink url="&ruby-download-ftp;"/>
46 </para>
47 </listitem>
48 <listitem>
49 <para>
50 Download MD5 sum: &ruby-md5sum;
51 </para>
52 </listitem>
53 <listitem>
54 <para>
55 Download size: &ruby-size;
56 </para>
57 </listitem>
58 <listitem>
59 <para>
60 Estimated disk space required: &ruby-buildsize;
61 </para>
62 </listitem>
63 <listitem>
64 <para>
65 Estimated build time: &ruby-time;
66 </para>
67 </listitem>
68 </itemizedlist>
69
70 <bridgehead renderas="sect3">Ruby Dependencies</bridgehead>
71
72 <bridgehead renderas="sect4">Required</bridgehead>
73 <para role="required">
74 <xref linkend="libyaml"/>
75 </para>
76
77 <bridgehead renderas="sect4">Optional</bridgehead>
78 <para role="optional">
79 <xref linkend="db"/>,
80 <xref linkend="doxygen"/>,
81 <xref linkend="graphviz"/>,
82 <xref linkend="rust"/>,
83 <xref linkend="tk"/>,
84 <xref linkend="valgrind"/>, and
85 <ulink url="http://dtrace.org/blogs/about/">DTrace</ulink>
86 </para>
87
88 <para condition="html" role="usernotes">User Notes:
89 <ulink url="&blfs-wiki;/ruby"/>
90 </para>
91 </sect2>
92
93 <sect2 role="installation">
94 <title>Installation of Ruby</title>
95
96 <para>
97 Install <application>Ruby</application> by running the following
98 command:
99 </para>
100
101<screen><userinput>./configure --prefix=/usr \
102 --enable-shared \
103 --without-valgrind \
104 --docdir=/usr/share/doc/ruby-&ruby-version; &amp;&amp;
105make</userinput></screen>
106
107 <para>
108 Optionally, build the CAPI documents by running the following
109 commands:
110 </para>
111
112<screen><userinput>make capi</userinput></screen>
113
114 <para>
115 To test the results, issue: <command>make check</command>. There are over
116 25,000 tests. Some tests related to ipv6 may indicate errors. If the
117 tests are run in a directory that has a world writable component (e.g.
118 /tmp) then several additional tests may fail. A few tests may fail due
119 to system configuration expectations.
120 </para>
121<!-- With 3.0.2:
122Finished tests in 443.541527s, 47.5739 tests/s, 6031.9921 assertions/s.
12321101 tests, 2675439 assertions, 4 failures, 1 errors, 45 skips
124
125with 3.2.0 there are several summaries:
126* PASS all 1789 tests
127* Finished tests in 6.815561s, 45.6309 tests/s, 264.2482 assertions/s.
128 311 tests, 1801 assertions, 0 failures, 0 errors, 12 skips
129* Finished tests in 462.613063s, 50.5649 tests/s, 12069.0885 assertions/s.
130 23392 tests, 5583318 assertions, 3 failures, 0 errors, 79 skips
131-->
132
133 <para>
134 Now, as the <systemitem class="username">root</systemitem> user:
135 </para>
136
137<screen role="root"><userinput>make install</userinput></screen>
138
139 <note>
140 <para>
141 If you have Ruby-On-Rails applications installed and did an
142 upgrade of <application>Ruby</application> by installing this
143 package, you might need to run an update there, too
144 (as the &root; user):
145 </para>
146
147<screen role="nodump"><userinput>cd /path/to/web/app
148bundle update rake</userinput></screen>
149
150 <para>
151 and restart the webserver which serves the application.
152 </para>
153
154 </note>
155
156 </sect2>
157
158 <sect2 role="commands">
159 <title>Command Explanations</title>
160
161 <para>
162 <parameter>--enable-shared</parameter>: This switch enables building
163 the <filename class="libraryfile">libruby</filename> shared library.
164 </para>
165
166 <para>
167 <option>--disable-install-doc</option>: This switch disables building and
168 installing rdoc indexes and C API documents.
169 </para>
170
171 <para>
172 <option>--disable-install-rdoc</option>: This switch disables building
173 and installing rdoc indexes.
174 </para>
175
176 <para>
177 <option>--disable-install-capi</option>: This switch disables building
178 and installing C API documents.
179 </para>
180
181 <para>
182 <option>--without-baseruby</option>: This switch prevents using the
183 system <command>ruby</command> if it is already installed. The build
184 system will use the newly built version instead.
185 </para>
186
187 </sect2>
188
189 <sect2 role="content">
190 <title>Contents</title>
191
192 <segmentedlist>
193 <segtitle>Installed Programs</segtitle>
194 <segtitle>Installed Libraries</segtitle>
195 <segtitle>Installed Directories</segtitle>
196
197 <seglistitem>
198 <seg>
199 bundle,
200 bundler,
201 erb,
202 gem,
203 irb,
204 racc,
205 rake,
206 rbs,
207 rdbg,
208 rdoc,
209 ri,
210 ruby, and
211 typeprof
212 </seg>
213 <seg>
214 libruby.so
215 </seg>
216 <seg>
217 /usr/include/ruby-&ruby-minor-version;.0,
218 /usr/lib/ruby,
219 /usr/share/doc/ruby-&ruby-version; and
220 /usr/share/ri
221 </seg>
222 </seglistitem>
223 </segmentedlist>
224
225 <variablelist>
226 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
227 <?dbfo list-presentation="list"?>
228 <?dbhtml list-presentation="table"?>
229
230 <varlistentry id="bundle">
231 <term><command>bundle</command></term>
232 <listitem>
233 <para>
234 creates bundles of Ruby Gems
235 </para>
236 <indexterm zone="ruby bundle">
237 <primary sortas="b-bundle">bundle</primary>
238 </indexterm>
239 </listitem>
240 </varlistentry>
241
242 <varlistentry id="bundler">
243 <term><command>bundler</command></term>
244 <listitem>
245 <para>
246 manages an application's dependencies throughout it's lifecycle
247 </para>
248 <indexterm zone="ruby bundler">
249 <primary sortas="b-bundler">bundler</primary>
250 </indexterm>
251 </listitem>
252 </varlistentry>
253
254 <varlistentry id="erb">
255 <term><command>erb</command></term>
256 <listitem>
257 <para>
258 is a command line front-end for eRuby, which provides a templating
259 system for <application>Ruby</application>
260 </para>
261 <indexterm zone="ruby erb">
262 <primary sortas="b-erb">erb</primary>
263 </indexterm>
264 </listitem>
265 </varlistentry>
266
267 <varlistentry id="gem">
268 <term><command>gem</command></term>
269 <listitem>
270 <para>
271 is the command for RubyGems, which is a sophisticated package
272 manager for <application>Ruby</application>. This is similar
273 to Python's 'pip' command
274 </para>
275 <indexterm zone="ruby gem">
276 <primary sortas="b-gem">gem</primary>
277 </indexterm>
278 </listitem>
279 </varlistentry>
280
281 <varlistentry id="irb">
282 <term><command>irb</command></term>
283 <listitem>
284 <para>
285 is the interactive interface for
286 <application>Ruby</application>
287 </para>
288 <indexterm zone="ruby irb">
289 <primary sortas="b-irb">irb</primary>
290 </indexterm>
291 </listitem>
292 </varlistentry>
293
294 <varlistentry id="rake">
295 <term><command>rake</command></term>
296 <listitem>
297 <para>
298 is a make-like build utility for <application>Ruby</application>
299 </para>
300 <indexterm zone="ruby rake">
301 <primary sortas="b-rake">rake</primary>
302 </indexterm>
303 </listitem>
304 </varlistentry>
305
306 <varlistentry id="rdbg">
307 <term><command>rdbg</command></term>
308 <listitem>
309 <para>
310 is an interactive debugger for <application>Ruby</application>
311 </para>
312 <indexterm zone="ruby rdbg">
313 <primary sortas="b-rdbg">rdbg</primary>
314 </indexterm>
315 </listitem>
316 </varlistentry>
317
318 <varlistentry id="rdoc">
319 <term><command>rdoc</command></term>
320 <listitem>
321 <para>
322 generates <application>Ruby</application> documentation
323 </para>
324 <indexterm zone="ruby rdoc">
325 <primary sortas="b-rdoc">rdoc</primary>
326 </indexterm>
327 </listitem>
328 </varlistentry>
329
330 <varlistentry id="ri">
331 <term><command>ri</command></term>
332 <listitem>
333 <para>
334 displays documentation from a database on
335 <application>Ruby</application> classes, modules, and methods
336 </para>
337 <indexterm zone="ruby ri">
338 <primary sortas="b-ri">ri</primary>
339 </indexterm>
340 </listitem>
341 </varlistentry>
342
343 <varlistentry id="ruby-prog">
344 <term><command>ruby</command></term>
345 <listitem>
346 <para>
347 is an interpreted scripting language for quick
348 and easy object-oriented programming
349 </para>
350 <indexterm zone="ruby ruby-prog">
351 <primary sortas="b-ruby">ruby</primary>
352 </indexterm>
353 </listitem>
354 </varlistentry>
355
356 <varlistentry id="libruby">
357 <term><filename role="libraryfile">libruby.so</filename></term>
358 <listitem>
359 <para>
360 contains the API functions required by <application>Ruby</application>
361 </para>
362 <indexterm zone="ruby libruby">
363 <primary sortas="c-libruby">libruby.so</primary>
364 </indexterm>
365 </listitem>
366 </varlistentry>
367
368 </variablelist>
369
370 </sect2>
371
372</sect1>
Note: See TracBrowser for help on using the repository browser.