Added a few comments here and there
[linux_from_scratch.git] / BOOK / chapter05 / perl.xml
blob7251700c1fa7782467ebaedd90832f8f5ff7d19b
1 <sect1 id="ch-tools-perl">
2 <title>Installing Perl-&perl-version;</title>
3 <?dbhtml filename="perl.html" dir="chapter05"?>
5 <screen>&buildtime; &perl-time-tools;
6 &diskspace; &perl-compsize-tools;</screen>
8 &aa-perl-down;
9 &aa-perl-dep;
11 <sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>
13 <sect2>
14 <title>Installation of Perl</title>
16 <para>First adapt some hard-wired paths to the C library:</para>
18 <screen><userinput>patch -Np1 -i ../&perl-libc-patch;</userinput></screen>
20 <para>Perl insists on using the <command>arch</command> program to find out
21 the machine type. Create a little script to mimick this command:</para>
23 <screen><userinput>echo "uname -m" &gt; /tools/bin/arch
24 chmod 755 /tools/bin/arch</userinput></screen>
26 <para>Now prepare Perl for compilation (make sure you get the 'IO Fcntl'
27 right, they are all letters):</para>
29 <screen><userinput>./configure.gnu --prefix=/tools -Dstatic_ext='IO Fcntl'</userinput></screen>
31 <para>The meaning of the configure option:</para>
33 <itemizedlist>
34 <listitem><para><userinput>-Dstatic_ext='IO Fcntl'</userinput>: This tells
35 Perl to build the minimum set of static extensions needed for running the
36 Coreutils test suite in the next chapter.</para></listitem>
37 </itemizedlist>
39 <para>Compile only the required tools:</para>
41 <screen><userinput>make perl utilities</userinput></screen>
43 <para>Then copy these tools and their libraries:</para>
45 <screen><userinput>cp perl pod/pod2man /tools/bin
46 mkdir -p /tools/lib/perl5/&perl-version;
47 cp -R lib/* /tools/lib/perl5/&perl-version;</userinput></screen>
49 </sect2>
51 <sect2><title>&nbsp;</title><para>&nbsp;</para>
52 <para>The details on this package are found in <xref linkend="contents-perl"/>.</para>
53 <para>&nbsp;</para></sect2>
55 </sect1>