develooper Front page | perl.macosx | Postings from August 2009

Re: 10.6 MacPerl - no appropriate 64-bit architecture

Thread Previous | Thread Next
From:
emoy
Date:
August 29, 2009 17:12
Subject:
Re: 10.6 MacPerl - no appropriate 64-bit architecture
Message ID:
3CDD3F9B-24A1-428F-A5BE-279CEEA5F876@apple.com
On Aug 29, 2009, at 2:50 PM, Kim Helliwell wrote:

> On Aug 29, 2009, at 1:06 PM, emoy@apple.com wrote:
>
>> On Aug 28, 2009, at 11:44 PM, Gavin Brock wrote:
>>
>>> On 28 Aug 2009, at 17:45, emoy@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.
>>>>
>>>> Ed
>>>
>>> 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", ...) ;-)
>>>
>>> Thanks,
>>>
>>> Gavin
>>
>> 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).
>>
>> Ed
>>
>
> 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...
>
> Kim

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.

Ed


Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About