Des détails sur ce paquet se trouvent sur Section 10.74.2, « Contenu de Perl. »
Le paquet Perl contient le langage de rapport et d'extraction pratique (Practical Extraction and Report Language)
Par défaut, les modules perl Compress::Raw::Wlib et Compress::Raw::Bzip2 sont construit et se lient à des copient internes de Zlib et Bzip2. La commande suivante fera que Perl utilisera les copies du système de ces bibliothèques :
sed -i -e '/^BUILD_ZLIB/s/True/False/' \ -e '/^INCLUDE/s,\./zlib-src,/usr/include,' \ -e '/^LIB/s,\./zlib-src,/usr/lib32,' \ cpan/Compress-Raw-Zlib/config.in
Perl ne connaît pas par défaut les répertoires des bibliothèques
avec un autre nom que lib
. Le
correctif suivant permettra d'installer dans d'autres
répertoires :
patch -Np1 -i ../perl-5.26.0-Configure_multilib-1.patch
Nous devons toujours dire à perl d'utiliser lib32
:
echo 'installstyle="lib32/perl5"' >> hints/linux.sh
Pour avoir le contrôle complet sur la manière dont Perl est paramétré vous pouvez lancer le script interactif Configure et choisir comment le paquet sera construit. Si vous préférez plutôt utiliser les paramètres par défaut que Perl détecte automatiquement, préparez Perl à la compilation avec :
./configure.gnu \ --prefix=/usr \ -Dvendorprefix=/usr \ -Dman1dir=/usr/share/man/man1 \ -Dman3dir=/usr/share/man/man3 \ -Dpager="/bin/less -isR" \ -Dlibpth="/usr/local/lib32 /lib32 /usr/lib32" \ -Dcc="gcc ${BUILDN32}" \ -Dusethreads \ -Duseshrplib
Voici la signification de la nouvelle option de configure :
-Dlibpth="/usr/local/lib32 /lib32
/usr/lib32"
Cela dit à perl de se lier aux bibliothèques N32.
-Dman1dir=/usr/share/man/man1
-Dman3dir=/usr/share/man/man3
Comme Groff n'est pas encore installé, configure.gnu pense que nous ne voulouns pas les pages de manuel de Perl. Ces paramètres reviennent sur cette décision.
-Dpager="/bin/less -isR"
Less n'a pas encore été installé, donc perldoc invoquera le programme more par défaut pour visionner la documentation. Cette option s'assure qu'il utilisera plutôt less.
-Dusethreads
Cela dit à Perl d'utiliser le multithreading.
-Duseshrplib
Cela dit à Perl de construire une libperl partagée.
Compilez le paquet :
make
Pour tester les résultats, lancez :
make test
Installez le paquet et supprimez les variables précédement initialisées :
make install unset BUILD_ZLIB BUILD_BZIP2
Ajoutez un suffixe au binaire perl afin de l'emballer avec l'enveloppe multi-architecture :
mv -v /usr/bin/perl{,-n32} mv -v /usr/bin/perl5.26.0{,-n32}
Des détails sur ce paquet se trouvent sur Section 10.74.2, « Contenu de Perl. »