Migrating MovableType to a 64 bits machine.

I wasted some hours on this few days ago so I think I want to share this information. We changed server and the new machine is a 64 bit one. The Storable.pm perl module was giving me this error
An error occurred: Byte order is not compatible at ../../lib/Storable.pm (autosplit into ../../lib/auto/Storable/thaw.al) line 363, at [path to MT directory]/lib/MT/PluginData.pm line 28.
I yahoo!ed a lot and I found only wrong paths. For example this forum thread suggests to change the code of lib/MT/PluginData.pm. After a lot of attempt changing the code, I found this post. I asked by email to Roger if he solved the problem and he replied that he used the trick described at Freebsdblog. And Yes, this worked! So I copy here the solution hoping to give it higher prominence in search engines.
After changed hosting, the perl version is different on the new server, MT-Blacklist can’t read the database data due to the different byte order, error message looks like:
Plugin error: plugins/Blacklist.pl Byte order is not compatible at blib/lib/Storable.pm (autosplit into blib/lib/auto/Storable/thaw.al) line 363, at lib/MT/PluginData.pm line 28 Compilation failed in require at lib/MT.pm line 291.

The problem was fixed after I deleted all records in the table mt_plugindata.
Simple, eh? And think that I lost a lot of time changing the code of the perl module and testing it out on different machines ;-(
Hopefully, people with the same problem will find this post or the original one on freebsdblog and save a lot of time.

Leave a Reply

Your email address will not be published. Required fields are marked *