source: chapter06/perl.xml@ 275a7d5

10.0 10.0-rc1 10.1 10.1-rc1 11.0 11.0-rc1 11.0-rc2 11.0-rc3 11.1 11.1-rc1 11.2 11.2-rc1 11.3 11.3-rc1 12.0 12.0-rc1 12.1 12.1-rc1 8.4 9.0 9.1 arm bdubbs/gcc13 ml-11.0 multilib renodr/libudev-from-systemd s6-init trunk xry111/arm64 xry111/arm64-12.0 xry111/clfs-ng xry111/lfs-next xry111/loongarch xry111/loongarch-12.0 xry111/loongarch-12.1 xry111/mips64el xry111/pip3 xry111/rust-wip-20221008 xry111/update-glibc
Last change on this file since 275a7d5 was 8146d97, checked in by Bruce Dubbs <bdubbs@…>, 5 years ago

Update installed programs for perl

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@11531 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 17.8 KB
RevLine 
[673b0d8]1<?xml version="1.0" encoding="ISO-8859-1"?>
[b06ca36]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[673b0d8]4 <!ENTITY % general-entities SYSTEM "../general.ent">
5 %general-entities;
6]>
[3f3931b0]7
[81fd230]8<sect1 id="ch-system-perl" role="wrap">
[3f3931b0]9 <?dbhtml filename="perl.html"?>
10
[e747759]11 <sect1info condition="script">
12 <productname>perl</productname>
13 <productnumber>&perl-version;</productnumber>
14 <address>&perl-url;</address>
15 </sect1info>
16
[3f3931b0]17 <title>Perl-&perl-version;</title>
18
19 <indexterm zone="ch-system-perl">
20 <primary sortas="a-Perl">Perl</primary>
21 </indexterm>
22
23 <sect2 role="package">
24 <title/>
[673b0d8]25
[3f3931b0]26 <para>The Perl package contains the Practical Extraction and Report
27 Language.</para>
[6370fa6]28
[3f3931b0]29 <segmentedlist>
30 <segtitle>&buildtime;</segtitle>
31 <segtitle>&diskspace;</segtitle>
[5888299]32
[3f3931b0]33 <seglistitem>
[e4a5635]34 <seg>&perl-ch6-sbu;</seg>
35 <seg>&perl-ch6-du;</seg>
[3f3931b0]36 </seglistitem>
37 </segmentedlist>
[3554fa3a]38
[3f3931b0]39 </sect2>
40
41 <sect2 role="installation">
42 <title>Installation of Perl</title>
43
[d26d6d5]44 <para>First create a basic <filename>/etc/hosts</filename> file to be
45 referenced in one of Perl's configuration files as well as the optional
[0ebe029b]46 test suite:</para>
[f76cde8]47
[0445a3d]48<screen><userinput remap="pre">echo "127.0.0.1 localhost $(hostname)" &gt; /etc/hosts</userinput></screen>
[f76cde8]49
[7e7daa79]50 <para>This version of Perl now builds the Compress::Raw::Zlib and
[78bf0c1]51 Compress::Raw::BZip2 modules. By
52 default Perl will use an internal copy of the sources for the build.
53 Issue the following command so that Perl will use the libraries
[59af1dc]54 installed on the system:</para>
55
[78bf0c1]56<screen><userinput remap="pre">export BUILD_ZLIB=False
57export BUILD_BZIP2=0</userinput></screen>
[241831ed]58<!--
[bb189b0]59 <para>Apply a patch to allow the Errno.pm module and the h2ph
60 program to build correctly when building with GCC 5:</para>
61
62<screen><userinput remap="pre">patch -Np1 -i ../&perl-gcc5-fixes-patch;</userinput></screen>
[241831ed]63-->
[894367e]64 <para>To have full control over the way Perl is set up, you can remove the
65 <quote>-des</quote> options from the following command and hand-pick the way
[b4a1c5e]66 this package is built. Alternatively, use the command exactly as below to
[894367e]67 use the defaults that Perl auto-detects:</para>
[73aedd1d]68
[9f5aaf7]69<screen><userinput remap="configure">sh Configure -des -Dprefix=/usr \
[863beea]70 -Dvendorprefix=/usr \
71 -Dman1dir=/usr/share/man/man1 \
72 -Dman3dir=/usr/share/man/man3 \
[b0e583b]73 -Dpager="/usr/bin/less -isR" \
[1e472fb]74 -Duseshrplib \
75 -Dusethreads</userinput></screen>
[73aedd1d]76
[3f3931b0]77 <variablelist>
78 <title>The meaning of the configure options:</title>
[81fd230]79
[863beea]80 <varlistentry>
81 <term><parameter>-Dvendorprefix=/usr</parameter></term>
82 <listitem>
83 <para>This ensures <command>perl</command> knows how to
84 tell packages where they should install their perl modules.</para>
85 </listitem>
86 </varlistentry>
87
[3f3931b0]88 <varlistentry>
89 <term><parameter>-Dpager="/usr/bin/less -isR"</parameter></term>
90 <listitem>
[a139c25]91 <para>This ensures that <userinput>less</userinput> is used instead
92 of <userinput>more</userinput>.</para>
[3f3931b0]93 </listitem>
94 </varlistentry>
[81fd230]95
[3685bb6]96 <varlistentry>
97 <term><parameter>-Dman1dir=/usr/share/man/man1
98 -Dman3dir=/usr/share/man/man3</parameter></term>
99 <listitem>
100 <para>Since Groff is not installed yet, <command>Configure</command>
101 thinks that we do not want man pages for Perl. Issuing these
102 parameters overrides this decision.</para>
103 </listitem>
104 </varlistentry>
105
[b0e583b]106 <varlistentry>
107 <term><parameter>-Duseshrplib</parameter></term>
108 <listitem>
109 <para>Build a shared libperl needed by some perl modules.</para>
110 </listitem>
111 </varlistentry>
112
[1e472fb]113 <varlistentry>
114 <term><parameter>-Dusethreads</parameter></term>
115 <listitem>
116 <para>Build perl with support for threads.</para>
117 </listitem>
118 </varlistentry>
119
[3f3931b0]120 </variablelist>
121
122 <para>Compile the package:</para>
[73aedd1d]123
[0445a3d]124<screen><userinput remap="make">make</userinput></screen>
[73aedd1d]125
[ff321d9]126 <para>To test the results (approximately 11 SBU), issue:</para>
[0445a3d]127
[f1c177f]128<screen><userinput remap="test">make -k test</userinput></screen>
[73aedd1d]129
[ff321d9]130 <note><para>One test fails due to using the most recent version of gdbm.
131 </para></note>
[9a605b8]132
[78bf0c1]133 <para>Install the package and clean up:</para>
[73aedd1d]134
[78bf0c1]135<screen><userinput remap="install">make install
136unset BUILD_ZLIB BUILD_BZIP2</userinput></screen>
[73aedd1d]137
[3f3931b0]138 </sect2>
139
140 <sect2 id="contents-perl" role="content">
141 <title>Contents of Perl</title>
142
143 <segmentedlist>
144 <segtitle>Installed programs</segtitle>
145 <segtitle>Installed libraries</segtitle>
[fe05b08]146 <segtitle>Installed directory</segtitle>
[3f3931b0]147
148 <seglistitem>
[8146d97]149 <seg>corelist, cpan, enc2xs, encguess, h2ph, h2xs, instmodsh,
[040ecb6]150 json_pp, libnetcfg, perl, perl&perl-version; (hard link to perl),
151 perlbug, perldoc, perlivp, perlthanks (hard link to perlbug), piconv,
152 pl2pm, pod2html, pod2man, pod2text, pod2usage, podchecker, podselect,
[8146d97]153 prove, ptar, ptardiff, ptargrep, shasum,
[040ecb6]154 splain, xsubpp, and zipdetails</seg>
155 <seg>Many which cannot all be listed here</seg>
[fe05b08]156 <seg>/usr/lib/perl5</seg>
[3f3931b0]157 </seglistitem>
158 </segmentedlist>
159
160 <variablelist>
161 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
162 <?dbfo list-presentation="list"?>
163 <?dbhtml list-presentation="table"?>
[8146d97]164<!--
[3f3931b0]165 <varlistentry id="c2ph">
166 <term><command>c2ph</command></term>
167 <listitem>
168 <para>Dumps C structures as generated from
169 <command>cc -g -S</command></para>
170 <indexterm zone="ch-system-perl c2ph">
171 <primary sortas="b-c2ph">c2ph</primary>
172 </indexterm>
173 </listitem>
174 </varlistentry>
[8146d97]175-->
[90aae6b]176 <varlistentry id="corelist">
177 <term><command>corelist</command></term>
178 <listitem>
179 <para>A commandline frontend to Module::CoreList</para>
180 <indexterm zone="ch-system-perl corelist">
181 <primary sortas="b-corelist">corelist</primary>
182 </indexterm>
183 </listitem>
184 </varlistentry>
185
[3ee0c39]186 <varlistentry id="cpan">
187 <term><command>cpan</command></term>
188 <listitem>
189 <para>Interact with the Comprehensive Perl Archive Network (CPAN)
190 from the command line</para>
191 <indexterm zone="ch-system-perl cpan">
192 <primary sortas="b-cpan">cpan</primary>
193 </indexterm>
194 </listitem>
195 </varlistentry>
196
[8bc46a5]197 <varlistentry id="enc2xs">
198 <term><command>enc2xs</command></term>
[3f3931b0]199 <listitem>
200 <para>Builds a Perl extension for the Encode module from either
201 Unicode Character Mappings or Tcl Encoding Files</para>
[8bc46a5]202 <indexterm zone="ch-system-perl enc2xs">
203 <primary sortas="b-enc2xs">enc2xs</primary>
[3f3931b0]204 </indexterm>
205 </listitem>
206 </varlistentry>
207
[040ecb6]208 <varlistentry id="encguess">
209 <term><command>encguess</command></term>
210 <listitem>
211 <para>Guess the encoding type of one or several files</para>
212 <indexterm zone="ch-system-perl encguess">
213 <primary sortas="b-encguess">encguess</primary>
214 </indexterm>
215 </listitem>
216 </varlistentry>
217
[3f3931b0]218 <varlistentry id="h2ph">
219 <term><command>h2ph</command></term>
220 <listitem>
221 <para>Converts <filename class="extension">.h</filename> C header
222 files to <filename class="extension">.ph</filename> Perl header
223 files</para>
224 <indexterm zone="ch-system-perl h2ph">
225 <primary sortas="b-h2ph">h2ph</primary>
226 </indexterm>
227 </listitem>
228 </varlistentry>
229
230 <varlistentry id="h2xs">
231 <term><command>h2xs</command></term>
232 <listitem>
233 <para>Converts <filename class="extension">.h</filename> C header
234 files to Perl extensions</para>
235 <indexterm zone="ch-system-perl h2xs">
236 <primary sortas="b-h2xs">h2xs</primary>
237 </indexterm>
238 </listitem>
239 </varlistentry>
240
[8bc46a5]241 <varlistentry id="instmodsh">
242 <term><command>instmodsh</command></term>
243 <listitem>
244 <para>Shell script for examining installed Perl modules,
[0d84af1]245 and can create a tarball from an installed module</para>
[8bc46a5]246 <indexterm zone="ch-system-perl instmodsh">
247 <primary sortas="b-instmodsh">instmodsh</primary>
248 </indexterm>
249 </listitem>
250 </varlistentry>
251
[3119ddc]252 <varlistentry id="json_pp">
253 <term><command>json_pp</command></term>
254 <listitem>
255 <para>Converts data between certain input and output formats</para>
256 <indexterm zone="ch-system-perl json_pp">
257 <primary sortas="b-json_pp">json_pp</primary>
258 </indexterm>
259 </listitem>
260 </varlistentry>
261
[3f3931b0]262 <varlistentry id="libnetcfg">
263 <term><command>libnetcfg</command></term>
264 <listitem>
265 <para>Can be used to configure the
[1db98e19]266 <filename class="libraryfile">libnet</filename> Perl module</para>
[3f3931b0]267 <indexterm zone="ch-system-perl libnetcfg">
268 <primary sortas="b-libnetcfg">libnetcfg</primary>
269 </indexterm>
270 </listitem>
271 </varlistentry>
272
273 <varlistentry id="perl">
274 <term><command>perl</command></term>
275 <listitem>
276 <para>Combines some of the best features of C, <command>sed</command>,
277 <command>awk</command> and <command>sh</command> into a single
278 swiss-army language</para>
279 <indexterm zone="ch-system-perl perl">
280 <primary sortas="b-perl">perl</primary>
281 </indexterm>
282 </listitem>
283 </varlistentry>
284
285 <varlistentry id="perl-version">
286 <term><command>perl&perl-version;</command></term>
287 <listitem>
288 <para>A hard link to <command>perl</command></para>
289 <indexterm zone="ch-system-perl perl-version">
290 <primary sortas="b-perl&perl-version;">perl&perl-version;</primary>
291 </indexterm>
292 </listitem>
293 </varlistentry>
294
295 <varlistentry id="perlbug">
296 <term><command>perlbug</command></term>
297 <listitem>
298 <para>Used to generate bug reports about Perl, or the modules that come
299 with it, and mail them</para>
300 <indexterm zone="ch-system-perl perlbug">
301 <primary sortas="b-perlbug">perlbug</primary>
302 </indexterm>
303 </listitem>
304 </varlistentry>
305
306 <varlistentry id="perldoc">
307 <term><command>perldoc</command></term>
308 <listitem>
309 <para>Displays a piece of documentation in pod format that is embedded
310 in the Perl installation tree or in a Perl script</para>
311 <indexterm zone="ch-system-perl perldoc">
312 <primary sortas="b-perldoc">perldoc</primary>
313 </indexterm>
314 </listitem>
315 </varlistentry>
316
317 <varlistentry id="perlivp">
318 <term><command>perlivp</command></term>
319 <listitem>
320 <para>The Perl Installation Verification Procedure; it can be used to
321 verify that Perl and its libraries have been installed
322 correctly</para>
323 <indexterm zone="ch-system-perl perlivp">
324 <primary sortas="b-perlivp">perlivp</primary>
325 </indexterm>
326 </listitem>
327 </varlistentry>
328
[9d42ad9]329 <varlistentry id="perlthanks">
330 <term><command>perlthanks</command></term>
331 <listitem>
332 <para>Used to generate thank you messages to mail to the Perl
333 developers</para>
334 <indexterm zone="ch-system-perl perlthanks">
335 <primary sortas="b-perlthanks">perlthanks</primary>
336 </indexterm>
337 </listitem>
338 </varlistentry>
339
[3f3931b0]340 <varlistentry id="piconv">
341 <term><command>piconv</command></term>
342 <listitem>
343 <para>A Perl version of the character encoding converter
344 <command>iconv</command></para>
345 <indexterm zone="ch-system-perl piconv">
346 <primary sortas="b-piconv">piconv</primary>
347 </indexterm>
348 </listitem>
349 </varlistentry>
350
351 <varlistentry id="pl2pm">
352 <term><command>pl2pm</command></term>
353 <listitem>
354 <para>A rough tool for converting Perl4
355 <filename class="extension">.pl</filename> files to Perl5
356 <filename class="extension">.pm</filename> modules</para>
357 <indexterm zone="ch-system-perl pl2pm">
358 <primary sortas="b-pl2pm">pl2pm</primary>
359 </indexterm>
360 </listitem>
361 </varlistentry>
362
363 <varlistentry id="pod2html">
364 <term><command>pod2html</command></term>
365 <listitem>
366 <para>Converts files from pod format to HTML format</para>
367 <indexterm zone="ch-system-perl pod2html">
368 <primary sortas="b-pod2html">pod2html</primary>
369 </indexterm>
370 </listitem>
371 </varlistentry>
372
373 <varlistentry id="pod2man">
374 <term><command>pod2man</command></term>
375 <listitem>
376 <para>Converts pod data to formatted *roff input</para>
377 <indexterm zone="ch-system-perl pod2man">
378 <primary sortas="b-pod2man">pod2man</primary>
379 </indexterm>
380 </listitem>
381 </varlistentry>
382
383 <varlistentry id="pod2text">
384 <term><command>pod2text</command></term>
385 <listitem>
386 <para>Converts pod data to formatted ASCII text</para>
387 <indexterm zone="ch-system-perl pod2text">
388 <primary sortas="b-pod2text">pod2text</primary>
389 </indexterm>
390 </listitem>
391 </varlistentry>
392
393 <varlistentry id="pod2usage">
394 <term><command>pod2usage</command></term>
395 <listitem>
396 <para>Prints usage messages from embedded pod docs in files</para>
397 <indexterm zone="ch-system-perl pod2usage">
398 <primary sortas="b-pod2usage">pod2usage</primary>
399 </indexterm>
400 </listitem>
401 </varlistentry>
402
403 <varlistentry id="podchecker">
404 <term><command>podchecker</command></term>
405 <listitem>
406 <para>Checks the syntax of pod format documentation files</para>
407 <indexterm zone="ch-system-perl podchecker">
408 <primary sortas="b-podchecker">podchecker</primary>
409 </indexterm>
410 </listitem>
411 </varlistentry>
412
413 <varlistentry id="podselect">
414 <term><command>podselect</command></term>
415 <listitem>
416 <para>Displays selected sections of pod documentation</para>
417 <indexterm zone="ch-system-perl podselect">
418 <primary sortas="b-podselect">podselect</primary>
419 </indexterm>
420 </listitem>
421 </varlistentry>
422
[3ee0c39]423 <varlistentry id="prove">
424 <term><command>prove</command></term>
425 <listitem>
426 <para>Command line tool for running tests against the Test::Harness
[afba93b]427 module</para>
[3ee0c39]428 <indexterm zone="ch-system-perl prove">
429 <primary sortas="b-prove">prove</primary>
430 </indexterm>
431 </listitem>
432 </varlistentry>
[8146d97]433<!--
[3f3931b0]434 <varlistentry id="pstruct">
435 <term><command>pstruct</command></term>
436 <listitem>
437 <para>Dumps C structures as generated from <command>cc -g -S</command>
438 stabs</para>
439 <indexterm zone="ch-system-perl pstruct">
440 <primary sortas="b-pstruct">pstruct</primary>
441 </indexterm>
442 </listitem>
443 </varlistentry>
[8146d97]444-->
[90aae6b]445 <varlistentry id="ptar">
446 <term><command>ptar</command></term>
447 <listitem>
448 <para>A <command>tar</command>-like program written in Perl</para>
449 <indexterm zone="ch-system-perl ptar">
450 <primary sortas="b-ptar">ptar</primary>
451 </indexterm>
452 </listitem>
453 </varlistentry>
454
455 <varlistentry id="ptardiff">
456 <term><command>ptardiff</command></term>
457 <listitem>
458 <para>A Perl program that compares an extracted archive with an
459 unextracted one</para>
460 <indexterm zone="ch-system-perl ptardiff">
461 <primary sortas="b-ptardiff">ptardiff</primary>
462 </indexterm>
463 </listitem>
464 </varlistentry>
465
[3119ddc]466 <varlistentry id="ptargrep">
467 <term><command>ptargrep</command></term>
468 <listitem>
469 <para>A Perl program that applies pattern matching to the contents
470 of files in a tar archive</para>
471 <indexterm zone="ch-system-perl ptargrep">
472 <primary sortas="b-ptargrep">ptargrep</primary>
473 </indexterm>
474 </listitem>
475 </varlistentry>
476
[90aae6b]477 <varlistentry id="shasum">
478 <term><command>shasum</command></term>
479 <listitem>
480 <para>Prints or checks SHA checksums</para>
481 <indexterm zone="ch-system-perl shasum">
482 <primary sortas="b-shasum">shasum</primary>
483 </indexterm>
484 </listitem>
485 </varlistentry>
486
[3f3931b0]487 <varlistentry id="splain">
488 <term><command>splain</command></term>
489 <listitem>
490 <para>Is used to force verbose warning diagnostics in Perl</para>
491 <indexterm zone="ch-system-perl splain">
492 <primary sortas="b-splain">splain</primary>
493 </indexterm>
494 </listitem>
495 </varlistentry>
496
497 <varlistentry id="xsubpp">
498 <term><command>xsubpp</command></term>
499 <listitem>
500 <para>Converts Perl XS code into C code</para>
501 <indexterm zone="ch-system-perl xsubpp">
502 <primary sortas="b-xsubpp">xsubpp</primary>
503 </indexterm>
504 </listitem>
505 </varlistentry>
506
[ca101ad]507 <varlistentry id="zipdetails">
508 <term><command>zipdetails</command></term>
509 <listitem>
510 <para>Displays details about the internal structure of a Zip file</para>
511 <indexterm zone="ch-system-perl zipdetails">
512 <primary sortas="b-zipdetails">zipdetails</primary>
513 </indexterm>
514 </listitem>
515 </varlistentry>
516
[3f3931b0]517 </variablelist>
518
519 </sect2>
[673b0d8]520
521</sect1>
Note: See TracBrowser for help on using the repository browser.