source: general/prog/ruby.xml@ 9a8633f6

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 9a8633f6 was 9a8633f6, checked in by Pierre Labastie <pierre.labastie@…>, 15 months ago

Document --without-baseruby for ruby

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.

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