J'essaie de décongeler un BLOB de base de données qui a été gelé en utilisant Storable sur une machine Solaris (production) 64 bits. Lorsque j'essaie de décongeler sur un PC Windows (développement) 32 bits, je reçois l'erreur "L'ordre des octets n'est pas compatible".Comment utiliser Perl 32 bits pour décongeler quelque chose gelé avec 64 bits Storable?
perl -v (on solaris)
This is perl, v5.8.8 built for i86pc-solaris-64
perl -v (on Windows)
This is perl, v5.10.1 built for MSWin32-x86-multi-thread
erreur exacte est:
(Unable to read: Byte order is not compatible at blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\thaw.al) line 415, at ../handlers/Search/actions/SearchSendQueue.pm line 124)
ligne 124 de SearchSendQueue.pm:
my $object = thaw($item->{object});
Est-ce que quelqu'un sait comment je peux dégeler cet objet sur la machine 32 bits?
Remarque: L'objet est valide et fonctionne sur la machine de production 64 bits. J'ai déjà essayé "$ Storable :: interwork_56_64bit = 1;" comme suggéré sur d'autres forums.
Si c'est juste un problème de commande d'octets, vous pouvez essayer d'inverser l'ordre des octets avec pack()? – Ether
Cela ne répond pas directement à votre question, mais les machines Intel 64 bits sont bon marché et Solaris est gratuit. Même si vous voulez exécuter Windows pour la plupart, une machine virtuelle Solaris peut vous aider. Je suis très heureux de pouvoir utiliser une machine pour développer sur presque toutes les plates-formes que je choisis. :) –