10.54. Perl-5.20.0 32 Bit Libraries

The Perl package contains the Practical Extraction and Report Language.

10.54.1. Installation of Perl

By default, Perl's Compress::Raw::Zlib module builds and links against its own internal copy of Zlib. The following command will tell it to use the system-installed Zlib:

sed -i -e '/^BUILD_ZLIB/s/True/False/' \
       -e '/^INCLUDE/s,\./zlib-src,/usr/include,' \
       -e '/^LIB/s,\./zlib-src,/usr/lib,' \
       cpan/Compress-Raw-Zlib/config.in
[Note]

Note

If you are following the boot method you will need to enable the loopback device:

ip link set lo up

Before starting to configure, create a basic /etc/hosts file which will be referenced by one of Perl's configuration files as well as used by the test suite:

echo "127.0.0.1 localhost $(hostname)" > /etc/hosts

To have full control over the way Perl is set up, you can run the interactive Configure script and hand-pick the way this package is built. If you prefer instead to use the defaults that Perl auto-detects, prepare Perl for compilation with:

./configure.gnu --prefix=/usr \
   -Dvendorprefix=/usr \
   -Dman1dir=/usr/share/man/man1 \
   -Dman3dir=/usr/share/man/man3 \
   -Dpager="/bin/less -isR" \
   -Dcc="gcc ${BUILD32}" \
   -Dusethreads -Duseshrplib

The meaning of the configure option:

-Dpager="/bin/less -isR"

Less has not yet been installed, so by default perldoc will invoke the more program for viewing documentation. This option ensures that it will use less instead.

-Dman1dir=/usr/share/man/man1 -Dman3dir=/usr/share/man/man3

Since Groff is not installed yet, configure.gnu thinks that we do not want man pages for Perl. Issuing these parameters overrides this decision.

-Dusethreads

This tells Perl to use threads.

-Duseshrplib

This tells Perl to build a shared libperl.

Compile the package:

make

To test the results, issue:

make test

Install the package:

make install

Add a suffix to the perl binary which will be used by the multiarch wrapper:

mv -v /usr/bin/perl{,-32}
mv -v /usr/bin/perl5.20.0{,-32}

Details on this package are located in Section 10.55.2, “Contents of Perl.”