| 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 |  | 
|---|
| 8 | <sect1 id="ch-system-perl" role="wrap"> | 
|---|
| 9 | <?dbhtml filename="perl.html"?> | 
|---|
| 10 |  | 
|---|
| 11 | <title>Perl-&perl-version;</title> | 
|---|
| 12 |  | 
|---|
| 13 | <indexterm zone="ch-system-perl"> | 
|---|
| 14 | <primary sortas="a-Perl">Perl</primary> | 
|---|
| 15 | </indexterm> | 
|---|
| 16 |  | 
|---|
| 17 | <sect2 role="package"> | 
|---|
| 18 | <title/> | 
|---|
| 19 |  | 
|---|
| 20 | <para>The Perl package contains the Practical Extraction and Report | 
|---|
| 21 | Language.</para> | 
|---|
| 22 |  | 
|---|
| 23 | </sect2> | 
|---|
| 24 |  | 
|---|
| 25 | &env-target; | 
|---|
| 26 |  | 
|---|
| 27 | <sect2 role="installation"> | 
|---|
| 28 | <title>Installation of Perl</title> | 
|---|
| 29 |  | 
|---|
| 30 | <warning os="w1"> | 
|---|
| 31 | <para>Building with <envar>CFLAGS</envar> or <envar>CXXFLAGS</envar> set | 
|---|
| 32 | can cause the build to hang or fail.</para> | 
|---|
| 33 | </warning> | 
|---|
| 34 |  | 
|---|
| 35 | <para os="p3">The following patch fixes issues with Perl and | 
|---|
| 36 | cross-compiling:</para> | 
|---|
| 37 |  | 
|---|
| 38 | <screen os="p4"><userinput>patch -Np1 -i ../&perl-cross_compile-patch;</userinput></screen> | 
|---|
| 39 |  | 
|---|
| 40 | <para os="s1">The following sed causes <filename>DynaLoader.a</filename> | 
|---|
| 41 | to be built with -fPIC so it can be linked into a shared library | 
|---|
| 42 | later:</para> | 
|---|
| 43 |  | 
|---|
| 44 | <screen os="s2"><userinput>chmod -v 644 Makefile.SH | 
|---|
| 45 | cp -v Makefile.SH{,.orig} | 
|---|
| 46 | sed -e "s@pldlflags=''@pldlflags=\"\$cccdlflags\"@g" \ | 
|---|
| 47 | -e "s@static_target='static'@static_target='static_pic'@g" Makefile.SH.orig > Makefile.SH</userinput></screen> | 
|---|
| 48 |  | 
|---|
| 49 | <para os="s3">By default, Perl's Compress::Raw::Zlib module builds and | 
|---|
| 50 | links against its own internal copy of Zlib. The following command will | 
|---|
| 51 | tell it use the system-installed Zlib:</para> | 
|---|
| 52 |  | 
|---|
| 53 | <screen os="s4"><userinput>sed -i -e '/^BUILD_ZLIB/ s/True/False/' \ | 
|---|
| 54 | -e '/^INCLUDE\|^LIB/ s|\./zlib-src|/usr/include|' \ | 
|---|
| 55 | ext/Compress/Raw/Zlib/config.in</userinput></screen> | 
|---|
| 56 |  | 
|---|
| 57 | <para os="a">The Cross directory contains a Makefile for cross-compiling:</para> | 
|---|
| 58 |  | 
|---|
| 59 | <screen os="b"><userinput>cd Cross</userinput></screen> | 
|---|
| 60 |  | 
|---|
| 61 | <para os="c">Compile the package:</para> | 
|---|
| 62 |  | 
|---|
| 63 | <screen os="d"><userinput>make ARCH=arm CROSS_COMPILE=${CLFS_TARGET}-</userinput></screen> | 
|---|
| 64 |  | 
|---|
| 65 | <para os="e">Install the package:</para> | 
|---|
| 66 |  | 
|---|
| 67 | <screen os="f"><userinput>make DESTDIR=${CLFS} install</userinput></screen> | 
|---|
| 68 |  | 
|---|
| 69 | </sect2> | 
|---|
| 70 |  | 
|---|
| 71 | <sect2 id="contents-perl" role="content"> | 
|---|
| 72 | <title>Contents of Perl</title> | 
|---|
| 73 |  | 
|---|
| 74 | <segmentedlist> | 
|---|
| 75 | <segtitle>Installed programs</segtitle> | 
|---|
| 76 | <segtitle>Installed libraries</segtitle> | 
|---|
| 77 |  | 
|---|
| 78 | <seglistitem> | 
|---|
| 79 | <seg>a2p, c2ph, cpan, dprofpp, enc2xs, find2perl, h2ph, h2xs, instmodsh, libnetcfg, | 
|---|
| 80 | perl, perl&perl-version; (link to perl), perlbug, perldoc, | 
|---|
| 81 | perlivp, piconv, pl2pm, pod2html, pod2latex, pod2man, pod2text, | 
|---|
| 82 | pod2usage, podchecker, podselect, prove, psed (link to s2p), pstruct (link | 
|---|
| 83 | to c2ph), s2p, splain, and xsubpp</seg> | 
|---|
| 84 | <seg>Several hundred which cannot all be listed here</seg> | 
|---|
| 85 | </seglistitem> | 
|---|
| 86 | </segmentedlist> | 
|---|
| 87 |  | 
|---|
| 88 | <variablelist> | 
|---|
| 89 | <bridgehead renderas="sect3">Short Descriptions</bridgehead> | 
|---|
| 90 | <?dbfo list-presentation="list"?> | 
|---|
| 91 | <?dbhtml list-presentation="table"?> | 
|---|
| 92 |  | 
|---|
| 93 | <varlistentry id="a2p"> | 
|---|
| 94 | <term><command>a2p</command></term> | 
|---|
| 95 | <listitem> | 
|---|
| 96 | <para>Translates awk to Perl</para> | 
|---|
| 97 | <indexterm zone="ch-system-perl a2p"> | 
|---|
| 98 | <primary sortas="b-a2p">a2p</primary> | 
|---|
| 99 | </indexterm> | 
|---|
| 100 | </listitem> | 
|---|
| 101 | </varlistentry> | 
|---|
| 102 |  | 
|---|
| 103 | <varlistentry id="c2ph"> | 
|---|
| 104 | <term><command>c2ph</command></term> | 
|---|
| 105 | <listitem> | 
|---|
| 106 | <para>Dumps C structures as generated from | 
|---|
| 107 | <command>cc -g -S</command></para> | 
|---|
| 108 | <indexterm zone="ch-system-perl c2ph"> | 
|---|
| 109 | <primary sortas="b-c2ph">c2ph</primary> | 
|---|
| 110 | </indexterm> | 
|---|
| 111 | </listitem> | 
|---|
| 112 | </varlistentry> | 
|---|
| 113 |  | 
|---|
| 114 | <varlistentry id="cpan"> | 
|---|
| 115 | <term><command>cpan</command></term> | 
|---|
| 116 | <listitem> | 
|---|
| 117 | <para>Shell script that provides a command interface to CPAN.pm</para> | 
|---|
| 118 | <indexterm zone="ch-system-perl cpan"> | 
|---|
| 119 | <primary sortas="b-cpan">cpan</primary> | 
|---|
| 120 | </indexterm> | 
|---|
| 121 | </listitem> | 
|---|
| 122 | </varlistentry> | 
|---|
| 123 |  | 
|---|
| 124 | <varlistentry id="dprofpp"> | 
|---|
| 125 | <term><command>dprofpp</command></term> | 
|---|
| 126 | <listitem> | 
|---|
| 127 | <para>Displays Perl profile data</para> | 
|---|
| 128 | <indexterm zone="ch-system-perl dprofpp"> | 
|---|
| 129 | <primary sortas="b-dprofpp">dprofpp</primary> | 
|---|
| 130 | </indexterm> | 
|---|
| 131 | </listitem> | 
|---|
| 132 | </varlistentry> | 
|---|
| 133 |  | 
|---|
| 134 | <varlistentry id="enc2xs"> | 
|---|
| 135 | <term><command>enc2xs</command></term> | 
|---|
| 136 | <listitem> | 
|---|
| 137 | <para>Builds a Perl extension for the Encode module from either | 
|---|
| 138 | Unicode Character Mappings or Tcl Encoding Files</para> | 
|---|
| 139 | <indexterm zone="ch-system-perl enc2xs"> | 
|---|
| 140 | <primary sortas="b-enc2xs">enc2xs</primary> | 
|---|
| 141 | </indexterm> | 
|---|
| 142 | </listitem> | 
|---|
| 143 | </varlistentry> | 
|---|
| 144 |  | 
|---|
| 145 | <varlistentry id="find2perl"> | 
|---|
| 146 | <term><command>find2perl</command></term> | 
|---|
| 147 | <listitem> | 
|---|
| 148 | <para>Translates <command>find</command> commands to Perl</para> | 
|---|
| 149 | <indexterm zone="ch-system-perl find2perl"> | 
|---|
| 150 | <primary sortas="b-find2perl">find2perl</primary> | 
|---|
| 151 | </indexterm> | 
|---|
| 152 | </listitem> | 
|---|
| 153 | </varlistentry> | 
|---|
| 154 |  | 
|---|
| 155 | <varlistentry id="h2ph"> | 
|---|
| 156 | <term><command>h2ph</command></term> | 
|---|
| 157 | <listitem> | 
|---|
| 158 | <para>Converts <filename class="extension">.h</filename> C header | 
|---|
| 159 | files to <filename class="extension">.ph</filename> Perl header | 
|---|
| 160 | files</para> | 
|---|
| 161 | <indexterm zone="ch-system-perl h2ph"> | 
|---|
| 162 | <primary sortas="b-h2ph">h2ph</primary> | 
|---|
| 163 | </indexterm> | 
|---|
| 164 | </listitem> | 
|---|
| 165 | </varlistentry> | 
|---|
| 166 |  | 
|---|
| 167 | <varlistentry id="h2xs"> | 
|---|
| 168 | <term><command>h2xs</command></term> | 
|---|
| 169 | <listitem> | 
|---|
| 170 | <para>Converts <filename class="extension">.h</filename> C header | 
|---|
| 171 | files to Perl extensions</para> | 
|---|
| 172 | <indexterm zone="ch-system-perl h2xs"> | 
|---|
| 173 | <primary sortas="b-h2xs">h2xs</primary> | 
|---|
| 174 | </indexterm> | 
|---|
| 175 | </listitem> | 
|---|
| 176 | </varlistentry> | 
|---|
| 177 |  | 
|---|
| 178 | <varlistentry id="libnetcfg"> | 
|---|
| 179 | <term><command>libnetcfg</command></term> | 
|---|
| 180 | <listitem> | 
|---|
| 181 | <para>Can be used to configure the | 
|---|
| 182 | <filename class="libraryfile">libnet</filename></para> | 
|---|
| 183 | <indexterm zone="ch-system-perl libnetcfg"> | 
|---|
| 184 | <primary sortas="b-libnetcfg">libnetcfg</primary> | 
|---|
| 185 | </indexterm> | 
|---|
| 186 | </listitem> | 
|---|
| 187 | </varlistentry> | 
|---|
| 188 |  | 
|---|
| 189 | <varlistentry id="instmodsh"> | 
|---|
| 190 | <term><command>instmodsh</command></term> | 
|---|
| 191 | <listitem> | 
|---|
| 192 | <para>A shell script for examining installed Perl modules, | 
|---|
| 193 | and can even create a tarball from an installed module</para> | 
|---|
| 194 | <indexterm zone="ch-system-perl instmodsh"> | 
|---|
| 195 | <primary sortas="b-instmodsh">instmodsh</primary> | 
|---|
| 196 | </indexterm> | 
|---|
| 197 | </listitem> | 
|---|
| 198 | </varlistentry> | 
|---|
| 199 |  | 
|---|
| 200 | <varlistentry id="perl"> | 
|---|
| 201 | <term><command>perl</command></term> | 
|---|
| 202 | <listitem> | 
|---|
| 203 | <para>Combines some of the best features of C, <command>sed</command>, | 
|---|
| 204 | <command>awk</command> and <command>sh</command> into a single | 
|---|
| 205 | swiss-army-knife language</para> | 
|---|
| 206 | <indexterm zone="ch-system-perl perl"> | 
|---|
| 207 | <primary sortas="b-perl">perl</primary> | 
|---|
| 208 | </indexterm> | 
|---|
| 209 | </listitem> | 
|---|
| 210 | </varlistentry> | 
|---|
| 211 |  | 
|---|
| 212 | <varlistentry id="perl-version"> | 
|---|
| 213 | <term><command>perl&perl-version;</command></term> | 
|---|
| 214 | <listitem> | 
|---|
| 215 | <para>A hard link to <command>perl</command></para> | 
|---|
| 216 | <indexterm zone="ch-system-perl perl-version"> | 
|---|
| 217 | <primary sortas="b-perl&perl-version;">perl&perl-version;</primary> | 
|---|
| 218 | </indexterm> | 
|---|
| 219 | </listitem> | 
|---|
| 220 | </varlistentry> | 
|---|
| 221 |  | 
|---|
| 222 | <varlistentry id="perlbug"> | 
|---|
| 223 | <term><command>perlbug</command></term> | 
|---|
| 224 | <listitem> | 
|---|
| 225 | <para>Used to generate bug reports about Perl, or the modules that come | 
|---|
| 226 | with it, and mail them</para> | 
|---|
| 227 | <indexterm zone="ch-system-perl perlbug"> | 
|---|
| 228 | <primary sortas="b-perlbug">perlbug</primary> | 
|---|
| 229 | </indexterm> | 
|---|
| 230 | </listitem> | 
|---|
| 231 | </varlistentry> | 
|---|
| 232 |  | 
|---|
| 233 | <varlistentry id="perldoc"> | 
|---|
| 234 | <term><command>perldoc</command></term> | 
|---|
| 235 | <listitem> | 
|---|
| 236 | <para>Displays a piece of documentation in pod format that is embedded | 
|---|
| 237 | in the Perl installation tree or in a Perl script</para> | 
|---|
| 238 | <indexterm zone="ch-system-perl perldoc"> | 
|---|
| 239 | <primary sortas="b-perldoc">perldoc</primary> | 
|---|
| 240 | </indexterm> | 
|---|
| 241 | </listitem> | 
|---|
| 242 | </varlistentry> | 
|---|
| 243 |  | 
|---|
| 244 | <varlistentry id="perlivp"> | 
|---|
| 245 | <term><command>perlivp</command></term> | 
|---|
| 246 | <listitem> | 
|---|
| 247 | <para>The Perl Installation Verification Procedure; it can be used to | 
|---|
| 248 | verify that Perl and its libraries have been installed | 
|---|
| 249 | correctly</para> | 
|---|
| 250 | <indexterm zone="ch-system-perl perlivp"> | 
|---|
| 251 | <primary sortas="b-perlivp">perlivp</primary> | 
|---|
| 252 | </indexterm> | 
|---|
| 253 | </listitem> | 
|---|
| 254 | </varlistentry> | 
|---|
| 255 |  | 
|---|
| 256 | <varlistentry id="piconv"> | 
|---|
| 257 | <term><command>piconv</command></term> | 
|---|
| 258 | <listitem> | 
|---|
| 259 | <para>A Perl version of the character encoding converter | 
|---|
| 260 | <command>iconv</command></para> | 
|---|
| 261 | <indexterm zone="ch-system-perl piconv"> | 
|---|
| 262 | <primary sortas="b-piconv">piconv</primary> | 
|---|
| 263 | </indexterm> | 
|---|
| 264 | </listitem> | 
|---|
| 265 | </varlistentry> | 
|---|
| 266 |  | 
|---|
| 267 | <varlistentry id="pl2pm"> | 
|---|
| 268 | <term><command>pl2pm</command></term> | 
|---|
| 269 | <listitem> | 
|---|
| 270 | <para>A rough tool for converting Perl4 | 
|---|
| 271 | <filename class="extension">.pl</filename> files to Perl5 | 
|---|
| 272 | <filename class="extension">.pm</filename> modules</para> | 
|---|
| 273 | <indexterm zone="ch-system-perl pl2pm"> | 
|---|
| 274 | <primary sortas="b-pl2pm">pl2pm</primary> | 
|---|
| 275 | </indexterm> | 
|---|
| 276 | </listitem> | 
|---|
| 277 | </varlistentry> | 
|---|
| 278 |  | 
|---|
| 279 | <varlistentry id="pod2html"> | 
|---|
| 280 | <term><command>pod2html</command></term> | 
|---|
| 281 | <listitem> | 
|---|
| 282 | <para>Converts files from pod format to HTML format</para> | 
|---|
| 283 | <indexterm zone="ch-system-perl pod2html"> | 
|---|
| 284 | <primary sortas="b-pod2html">pod2html</primary> | 
|---|
| 285 | </indexterm> | 
|---|
| 286 | </listitem> | 
|---|
| 287 | </varlistentry> | 
|---|
| 288 |  | 
|---|
| 289 | <varlistentry id="pod2latex"> | 
|---|
| 290 | <term><command>pod2latex</command></term> | 
|---|
| 291 | <listitem> | 
|---|
| 292 | <para>Converts files from pod format to LaTeX format</para> | 
|---|
| 293 | <indexterm zone="ch-system-perl pod2latex"> | 
|---|
| 294 | <primary sortas="b-pod2latex">pod2latex</primary> | 
|---|
| 295 | </indexterm> | 
|---|
| 296 | </listitem> | 
|---|
| 297 | </varlistentry> | 
|---|
| 298 |  | 
|---|
| 299 | <varlistentry id="pod2man"> | 
|---|
| 300 | <term><command>pod2man</command></term> | 
|---|
| 301 | <listitem> | 
|---|
| 302 | <para>Converts pod data to formatted *roff input</para> | 
|---|
| 303 | <indexterm zone="ch-system-perl pod2man"> | 
|---|
| 304 | <primary sortas="b-pod2man">pod2man</primary> | 
|---|
| 305 | </indexterm> | 
|---|
| 306 | </listitem> | 
|---|
| 307 | </varlistentry> | 
|---|
| 308 |  | 
|---|
| 309 | <varlistentry id="pod2text"> | 
|---|
| 310 | <term><command>pod2text</command></term> | 
|---|
| 311 | <listitem> | 
|---|
| 312 | <para>Converts pod data to formatted ASCII text</para> | 
|---|
| 313 | <indexterm zone="ch-system-perl pod2text"> | 
|---|
| 314 | <primary sortas="b-pod2text">pod2text</primary> | 
|---|
| 315 | </indexterm> | 
|---|
| 316 | </listitem> | 
|---|
| 317 | </varlistentry> | 
|---|
| 318 |  | 
|---|
| 319 | <varlistentry id="pod2usage"> | 
|---|
| 320 | <term><command>pod2usage</command></term> | 
|---|
| 321 | <listitem> | 
|---|
| 322 | <para>Prints usage messages from embedded pod docs in files</para> | 
|---|
| 323 | <indexterm zone="ch-system-perl pod2usage"> | 
|---|
| 324 | <primary sortas="b-pod2usage">pod2usage</primary> | 
|---|
| 325 | </indexterm> | 
|---|
| 326 | </listitem> | 
|---|
| 327 | </varlistentry> | 
|---|
| 328 |  | 
|---|
| 329 | <varlistentry id="podchecker"> | 
|---|
| 330 | <term><command>podchecker</command></term> | 
|---|
| 331 | <listitem> | 
|---|
| 332 | <para>Checks the syntax of pod format documentation files</para> | 
|---|
| 333 | <indexterm zone="ch-system-perl podchecker"> | 
|---|
| 334 | <primary sortas="b-podchecker">podchecker</primary> | 
|---|
| 335 | </indexterm> | 
|---|
| 336 | </listitem> | 
|---|
| 337 | </varlistentry> | 
|---|
| 338 |  | 
|---|
| 339 | <varlistentry id="podselect"> | 
|---|
| 340 | <term><command>podselect</command></term> | 
|---|
| 341 | <listitem> | 
|---|
| 342 | <para>Displays selected sections of pod documentation</para> | 
|---|
| 343 | <indexterm zone="ch-system-perl podselect"> | 
|---|
| 344 | <primary sortas="b-podselect">podselect</primary> | 
|---|
| 345 | </indexterm> | 
|---|
| 346 | </listitem> | 
|---|
| 347 | </varlistentry> | 
|---|
| 348 |  | 
|---|
| 349 | <varlistentry id="prove"> | 
|---|
| 350 | <term><command>prove</command></term> | 
|---|
| 351 | <listitem> | 
|---|
| 352 | <para>A command-line tool for running tests against Test::Harness</para> | 
|---|
| 353 | <indexterm zone="ch-system-perl prove"> | 
|---|
| 354 | <primary sortas="b-prove">prove</primary> | 
|---|
| 355 | </indexterm> | 
|---|
| 356 | </listitem> | 
|---|
| 357 | </varlistentry> | 
|---|
| 358 |  | 
|---|
| 359 | <varlistentry id="psed"> | 
|---|
| 360 | <term><command>psed</command></term> | 
|---|
| 361 | <listitem> | 
|---|
| 362 | <para>A Perl version of the stream editor <command>sed</command></para> | 
|---|
| 363 | <indexterm zone="ch-system-perl psed"> | 
|---|
| 364 | <primary sortas="b-psed">psed</primary> | 
|---|
| 365 | </indexterm> | 
|---|
| 366 | </listitem> | 
|---|
| 367 | </varlistentry> | 
|---|
| 368 |  | 
|---|
| 369 | <varlistentry id="pstruct"> | 
|---|
| 370 | <term><command>pstruct</command></term> | 
|---|
| 371 | <listitem> | 
|---|
| 372 | <para>Dumps C structures as generated from <command>cc -g -S</command> | 
|---|
| 373 | stabs</para> | 
|---|
| 374 | <indexterm zone="ch-system-perl pstruct"> | 
|---|
| 375 | <primary sortas="b-pstruct">pstruct</primary> | 
|---|
| 376 | </indexterm> | 
|---|
| 377 | </listitem> | 
|---|
| 378 | </varlistentry> | 
|---|
| 379 |  | 
|---|
| 380 | <varlistentry id="s2p"> | 
|---|
| 381 | <term><command>s2p</command></term> | 
|---|
| 382 | <listitem> | 
|---|
| 383 | <para>Translates <command>sed</command> to Perl</para> | 
|---|
| 384 | <indexterm zone="ch-system-perl s2p"> | 
|---|
| 385 | <primary sortas="b-s2p">s2p</primary> | 
|---|
| 386 | </indexterm> | 
|---|
| 387 | </listitem> | 
|---|
| 388 | </varlistentry> | 
|---|
| 389 |  | 
|---|
| 390 | <varlistentry id="splain"> | 
|---|
| 391 | <term><command>splain</command></term> | 
|---|
| 392 | <listitem> | 
|---|
| 393 | <para>Is used to force verbose warning diagnostics in Perl</para> | 
|---|
| 394 | <indexterm zone="ch-system-perl splain"> | 
|---|
| 395 | <primary sortas="b-splain">splain</primary> | 
|---|
| 396 | </indexterm> | 
|---|
| 397 | </listitem> | 
|---|
| 398 | </varlistentry> | 
|---|
| 399 |  | 
|---|
| 400 | <varlistentry id="xsubpp"> | 
|---|
| 401 | <term><command>xsubpp</command></term> | 
|---|
| 402 | <listitem> | 
|---|
| 403 | <para>Converts Perl XS code into C code</para> | 
|---|
| 404 | <indexterm zone="ch-system-perl xsubpp"> | 
|---|
| 405 | <primary sortas="b-xsubpp">xsubpp</primary> | 
|---|
| 406 | </indexterm> | 
|---|
| 407 | </listitem> | 
|---|
| 408 | </varlistentry> | 
|---|
| 409 |  | 
|---|
| 410 | </variablelist> | 
|---|
| 411 |  | 
|---|
| 412 | </sect2> | 
|---|
| 413 |  | 
|---|
| 414 | </sect1> | 
|---|