source: general/prog/ruby.xml@ 907a269

12.0 12.1 kea ken/TL2024 ken/tuningfonts lazarus lxqt plabs/newcss python3.11 rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since 907a269 was 14891a90, checked in by Xi Ruoyao <xry111@…>, 12 months ago

treewide: More "User Notes" clean up

Remove links to pages w/o real contents.

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