我試圖解凍在64位Solaris(生產)計算機上使用Storable凍結的數據庫BLOB。當我嘗試在32位Windows(開發)PC上解凍時,我收到「字節順序不兼容錯誤」。如何使用32位Perl解凍64位可凍結的東西?
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
精確的錯誤是:
(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)
線SearchSendQueue.pm 124:
my $object = thaw($item->{object});
有誰知道我可以在32位機器上解凍此對象嗎?
注意:該對象在64位生產機器上有效且正在使用。 我已經試過「$ Storable :: interwork_56_64bit = 1;」正如其他論壇所建議的那樣。
如果這只是一個字節順序問題,你可以嘗試用pack()顛倒字節順序? – Ether 2010-01-07 06:27:38
這並不能直接回答你的問題,但是64位的英特爾機器很便宜,Solaris是免費的。即使您想要大部分運行Windows,Solaris虛擬機也可以提供幫助。我很高興能夠使用一臺機器來開發幾乎任何我選擇的平臺。 :) – 2010-01-07 13:11:58