Incompatibilité Text::Iconv et Dynaloader sous jaunty
Le
Bondinho
Bonjour,
J'ai récemment installé un serveur ubuntu 9.04 et j'y ai uploadé un
script qui marchait à merveilles sous hardy et intrepid.
Cependant, sur le nouveau serveur, lorsque je lance le script,
j'obtiens l'erreur suivante :
Text::Iconv object version 1.7 does not match bootstrap parameter 1.4
at /usr/lib/perl/5.10/DynaLoader.pm line 219.
Compilation failed in require at perl.pl line 9.
BEGIN failed--compilation aborted at perl.pl line 9.
La ligne 9 en question est la suivante:
use Text::Iconv;
Quelqu'un pourrait-il me proposer une solution?
Merci
J'ai récemment installé un serveur ubuntu 9.04 et j'y ai uploadé un
script qui marchait à merveilles sous hardy et intrepid.
Cependant, sur le nouveau serveur, lorsque je lance le script,
j'obtiens l'erreur suivante :
Text::Iconv object version 1.7 does not match bootstrap parameter 1.4
at /usr/lib/perl/5.10/DynaLoader.pm line 219.
Compilation failed in require at perl.pl line 9.
BEGIN failed--compilation aborted at perl.pl line 9.
La ligne 9 en question est la suivante:
use Text::Iconv;
Quelqu'un pourrait-il me proposer une solution?
Merci

Poser une question


Il faut essayer de réinstaller iconv, le fichier iconv.pm est peut-être
corrompu :
sudo apt-get install --reinstall libtext-iconv-perl
S'il reste des erreurs, vérifier sur la page dédiée qu'il n'y a pas du
bug ouvert chez ubuntu, et si ce n'est pas le cas en ouvrir un :
https://bugs.launchpad.net/ubuntu/+filebug
Bonne continuation,
--
Denis Dordoigne
Membre de l'April - promouvoir et défendre le logiciel libre - april.org
Rejoignez maintenant plus de 5 000 personnes, associations,
entreprises et collectivités qui soutiennent notre action
Ce n'est pas la réponse, mais pourquoi utiliser Text::Iconv plutôt que le
module standard Encode, qui interagit mieux avec l'Unicode natif de perl ?
Merci Denis.
Bondinho a écrit :
J'utilise quotidiennement Ubuntu 9.04 Jaunty Jackalope, en version
bureau 32 bits, et non pas en version serveur. Mais la version serveur
et bureau partagent les mêmes paquets.
J'ai écrit et lancé ce script avec succès :
#!/usr/bin/perl
use Text::Iconv;
use strict;
my $converter = Text::Iconv->new("UTF-8", "iso-8859-15");
print $converter->convert("àéèô") . "n";
Donc à mon niveau je ne vois pas de souci. Avez vous une version 64 bits
ou 32 bits de Jaunty Jackalope, avez vous fait une installation ou une
mise à niveau ?
Cordialement,
--
Steve
Beurk. Text::Iconv est essentiellement à proscrire.
use utf8; # encodage du code source
binmode STDOUT ":encoding(iso-8859-15);
print "àéèô", "n";
Ou bien :
use utf8;
use Encode;
print encode("iso-8859-15", "àéèô"), "n";