On Aug 29, 2009, at 2:50 PM, Kim Helliwell wrote:

On Aug 29, 2009, at 1:06 PM, e...@apple.com wrote:

On Aug 28, 2009, at 11:44 PM, Gavin Brock wrote:

On 28 Aug 2009, at 17:45, e...@apple.com wrote:

On Aug 27, 2009, at 11:15 PM, Gavin Brock wrote:

Anyone else seeing issues with Snow Leopard /usr/bin/perl modules on 64bit hardware?

/usr/bin/perl -MMacPerl -e 1
Can't load '/System/Library/Perl/Extras/5.10.0/darwin-thread- multi-2level/auto/MacPerl/MacPerl.bundle'
for module MacPerl:

Any insights?

Because a lot of Carbon is not available in 64-bit, and because MacPerl and other modules are based on Carbon, they can't be built 64-bit. Since perl 5.10.0 is 64-bit by default, those modules can't be loaded.

A 32-bit only machine will work fine, just as using the techniques mentioned in "man perl" for running in 32-bit mode. However, since the world is moving to 64-bit, and most of SnowLeopard is already 64-bit, moving off of modules that depend on non-64-bit software like Carbon is the long term solution.


Since MacPerl is deprecated in 10.6, does anyone have a suggestion for an alternative way to call AppleScript from perl? The MacPerl::DoAppleScript was very convenient.

I believed that Mac::Glue was the popular "perly" way to call AppleScript, but even that claims to need "the latest Mac::Carbon distribution". Will that work on 64bit?

Please don't tell me I have to system("osascript", ...) ;-)



Mac::Glue and Mac::Carbon are again based on Carbon, and won't work in 64-bit.

Though I haven't used it myself, "use Foundation;" will load in the PerlObjCBridge module (which is 64-bit) and then you can use NSAppleScript class to run an AppleScript script (as I understand it).


The conclusion I see from this is: If I have a script that requires Mac::Glue, I'm pretty much out of luck. Oh, well, I guess it's way past time to port it over to Applescript altogether...


Not really "out of luck". You can choose to use the 32-bit version of perl 5.10.0, or even the perl 5.8.9 (which is only 32-bit), as per the man page, for the time being on SnowLeopard. This should hopefully give everyone enough time before the next major release of Mac OS X to work on transitioning to 64-bit compatible code.


Reply via email to