source: general/prog/ruby.xml@ dbdd6ff4

11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods 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 dbdd6ff4 was dbdd6ff4, checked in by Ken Moffat <ken@…>, 16 months ago

Change libyaml to 'required' for ruby.

  • 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 "169bbbd82b7ced3d39a4be36f50db459">
10 <!ENTITY ruby-size "14 MB">
11 <!ENTITY ruby-buildsize "574 MB (add 547 MB for C API docs)">
12 <!ENTITY ruby-time "1.3 SBU (using parallelism=4; add 5.0 SBU for tests; add 0.5 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 &lfs112_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="tk"/>,
83 <xref linkend="valgrind"/>, and
84 <ulink url="http://dtrace.org/blogs/about/">DTrace</ulink>
85 </para>
86
87 <para condition="html" role="usernotes">User Notes:
88 <ulink url="&blfs-wiki;/ruby"/>
89 </para>
90 </sect2>
91
92 <sect2 role="installation">
93 <title>Installation of Ruby</title>
94
95 <para>
96 Install <application>Ruby</application> by running the following
97 command:
98 </para>
99
100<screen><userinput>./configure --prefix=/usr \
101 --enable-shared \
102 --docdir=/usr/share/doc/ruby-&ruby-version; &amp;&amp;
103make</userinput></screen>
104
105 <para>
106 Optionally, build the CAPI documents by running the following
107 commands:
108 </para>
109
110<screen><userinput>make capi</userinput></screen>
111
112 <para>
113 To test the results, issue: <command>make check</command>. There are over
114 25,000 tests. Some tests related to ipv6 may indicate errors. If the
115 tests are run in a directory that has a world writable component (e.g.
116 /tmp) then several additional tests may fail. A few tests may fail due
117 to system configuration expectations.
118 </para>
119<!-- With 3.0.2:
120Finished tests in 443.541527s, 47.5739 tests/s, 6031.9921 assertions/s.
12121101 tests, 2675439 assertions, 4 failures, 1 errors, 45 skips
122
123with 3.2.0 there are several summaries:
124* PASS all 1789 tests
125* Finished tests in 6.815561s, 45.6309 tests/s, 264.2482 assertions/s.
126 311 tests, 1801 assertions, 0 failures, 0 errors, 12 skips
127* Finished tests in 462.613063s, 50.5649 tests/s, 12069.0885 assertions/s.
128 23392 tests, 5583318 assertions, 3 failures, 0 errors, 79 skips
129-->
130
131 <para>
132 Now, as the <systemitem class="username">root</systemitem> user:
133 </para>
134
135<screen role="root"><userinput>make install</userinput></screen>
136
137 <note>
138 <para>
139 If you have Ruby-On-Rails applications installed and did an
140 upgrade of <application>Ruby</application> by installing this
141 package, you might need to run an update there, too
142 (as the &root; user):
143 </para>
144
145<screen role="nodump"><userinput>cd /path/to/web/app
146bundle update rake</userinput></screen>
147
148 <para>
149 and restart the webserver which serves the application.
150 </para>
151
152 </note>
153
154 </sect2>
155
156 <sect2 role="commands">
157 <title>Command Explanations</title>
158
159 <para>
160 <parameter>--enable-shared</parameter>: This switch enables building
161 the <filename class="libraryfile">libruby</filename> shared library.
162 </para>
163
164 <para>
165 <option>--disable-install-doc</option>: This switch disables building and
166 installing rdoc indexes and C API documents.
167 </para>
168
169 <para>
170 <option>--disable-install-rdoc</option>: This switch disables building
171 and installing rdoc indexes.
172 </para>
173
174 <para>
175 <option>--disable-install-capi</option>: This switch disables building
176 and installing C API documents.
177 </para>
178
179 <para>
180 <option>--without-baseruby</option>: This switch prevents using the
181 system <command>ruby</command> if it is already installed. The build
182 system will use the newly built version instead.
183 </para>
184
185 </sect2>
186
187 <sect2 role="content">
188 <title>Contents</title>
189
190 <segmentedlist>
191 <segtitle>Installed Programs</segtitle>
192 <segtitle>Installed Libraries</segtitle>
193 <segtitle>Installed Directories</segtitle>
194
195 <seglistitem>
196 <seg>
197 bundle,
198 bundler,
199 erb,
200 gem,
201 irb,
202 racc,
203 rake,
204 rbs,
205 rdbg,
206 rdoc,
207 ri,
208 ruby, and
209 typeprof
210 </seg>
211 <seg>
212 libruby.so
213 </seg>
214 <seg>
215 /usr/include/ruby-&ruby-minor-version;.0,
216 /usr/lib/ruby,
217 /usr/share/doc/ruby-&ruby-version; and
218 /usr/share/ri
219 </seg>
220 </seglistitem>
221 </segmentedlist>
222
223 <variablelist>
224 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
225 <?dbfo list-presentation="list"?>
226 <?dbhtml list-presentation="table"?>
227
228 <varlistentry id="bundle">
229 <term><command>bundle</command></term>
230 <listitem>
231 <para>
232 creates bundles of Ruby Gems
233 </para>
234 <indexterm zone="ruby bundle">
235 <primary sortas="b-bundle">bundle</primary>
236 </indexterm>
237 </listitem>
238 </varlistentry>
239
240 <varlistentry id="bundler">
241 <term><command>bundler</command></term>
242 <listitem>
243 <para>
244 manages an application's dependencies throughout it's lifecycle
245 </para>
246 <indexterm zone="ruby bundler">
247 <primary sortas="b-bundler">bundler</primary>
248 </indexterm>
249 </listitem>
250 </varlistentry>
251
252 <varlistentry id="erb">
253 <term><command>erb</command></term>
254 <listitem>
255 <para>
256 is a command line front-end for eRuby, which provides a templating
257 system for <application>Ruby</application>
258 </para>
259 <indexterm zone="ruby erb">
260 <primary sortas="b-erb">erb</primary>
261 </indexterm>
262 </listitem>
263 </varlistentry>
264
265 <varlistentry id="gem">
266 <term><command>gem</command></term>
267 <listitem>
268 <para>
269 is the command for RubyGems, which is a sophisticated package
270 manager for <application>Ruby</application>. This is similar
271 to Python's 'pip' command
272 </para>
273 <indexterm zone="ruby gem">
274 <primary sortas="b-gem">gem</primary>
275 </indexterm>
276 </listitem>
277 </varlistentry>
278
279 <varlistentry id="irb">
280 <term><command>irb</command></term>
281 <listitem>
282 <para>
283 is the interactive interface for
284 <application>Ruby</application>
285 </para>
286 <indexterm zone="ruby irb">
287 <primary sortas="b-irb">irb</primary>
288 </indexterm>
289 </listitem>
290 </varlistentry>
291
292 <varlistentry id="rake">
293 <term><command>rake</command></term>
294 <listitem>
295 <para>
296 is a make-like build utility for <application>Ruby</application>
297 </para>
298 <indexterm zone="ruby rake">
299 <primary sortas="b-rake">rake</primary>
300 </indexterm>
301 </listitem>
302 </varlistentry>
303
304 <varlistentry id="rdbg">
305 <term><command>rdbg</command></term>
306 <listitem>
307 <para>
308 is an interactive debugger for <application>Ruby</application>
309 </para>
310 <indexterm zone="ruby rdbg">
311 <primary sortas="b-rdbg">rdbg</primary>
312 </indexterm>
313 </listitem>
314 </varlistentry>
315
316 <varlistentry id="rdoc">
317 <term><command>rdoc</command></term>
318 <listitem>
319 <para>
320 generates <application>Ruby</application> documentation
321 </para>
322 <indexterm zone="ruby rdoc">
323 <primary sortas="b-rdoc">rdoc</primary>
324 </indexterm>
325 </listitem>
326 </varlistentry>
327
328 <varlistentry id="ri">
329 <term><command>ri</command></term>
330 <listitem>
331 <para>
332 displays documentation from a database on
333 <application>Ruby</application> classes, modules, and methods
334 </para>
335 <indexterm zone="ruby ri">
336 <primary sortas="b-ri">ri</primary>
337 </indexterm>
338 </listitem>
339 </varlistentry>
340
341 <varlistentry id="ruby-prog">
342 <term><command>ruby</command></term>
343 <listitem>
344 <para>
345 is an interpreted scripting language for quick
346 and easy object-oriented programming
347 </para>
348 <indexterm zone="ruby ruby-prog">
349 <primary sortas="b-ruby">ruby</primary>
350 </indexterm>
351 </listitem>
352 </varlistentry>
353
354 <varlistentry id="libruby">
355 <term><filename role="libraryfile">libruby.so</filename></term>
356 <listitem>
357 <para>
358 contains the API functions required by <application>Ruby</application>
359 </para>
360 <indexterm zone="ruby libruby">
361 <primary sortas="c-libruby">libruby.so</primary>
362 </indexterm>
363 </listitem>
364 </varlistentry>
365
366 </variablelist>
367
368 </sect2>
369
370</sect1>
Note: See TracBrowser for help on using the repository browser.