[PyQt] PyQt on OSX Snow Leopard notes
Phil Thompson
phil at riverbankcomputing.com
Fri Sep 11 18:31:05 BST 2009
On Fri, 11 Sep 2009 11:34:58 -0500, William Kyngesburye
<woklist at kyngchaos.com> wrote:
> On Sep 11, 2009, at 11:05 AM, Phil Thompson wrote:
>
>>> It's not so much a problem of Qt supporting Snow (yes, the mkspec
>>> problem, but it seems to be minor), but supporting OSX 64bit, which
>>> covers both Leopard AND Snow. The standard Carbon-based Mac Qt will
>>> never be 64bit. Qt Cocoa is 64bit (I have yet to try it out).
>>>
>>> And there is now the extra 64bit-ness of Python in Snow now, which
>>> causes trouble with Python-based software. People WILL update to
>>> Snow
>>> and WILL (and have already) have problems compiling PyQt.
>>>
>>> Since Qt Cocoa may take a while to be fully functional and in common
>>> use, PtQt at least needs some way to deal with a 64bit Python
>>> executable (use the arch command where python/pythonw executed when
>>> built for Qt carbon).
>>>
>>> Note: I just figured out the problem with the arch command. It's not
>>> broken. There are 2 copies of the python and pythonw executables:
>>> in /
>>> usr/bin and in the Python framework. The /usr/bin exe's are not
>>> symlinks to the framework, and have different file sizes. For some
>>> reason the /usr/bin exe's don't work with arch, but the framework
>>> exe's do. /usr/bin/python2.6 and /usr/bin/pythonw2.6 ARE symlinks to
>>> the framework.
>>
>> I'm not convinced this is a PyQt problem - even though it affects PyQt
>> users. If you are on a 64 bit system then you would expect to be
>> building
>> 64 binaries, ie. 64 bit Qt Cocoa, not 32 Qt Carbon.
>
> Leopard is a 64bit system. But (probably) because all (except apache)
> of the Apple-built apps are still 32bit, gcc 4.0 compiles 32bit by
> default. You can still compile for 64bit if you want (and the needed
> components support it - all system libraries and frameworks are 64bit,
> even the python libraries, except the wxpython stuff).
>
>> I assume that when Qt
>> "properly" supports Snow Leopard then that would be the default on
>> 64 bit
>> systems. In which case the standard build process, and pyuic, will
>> continue
>> to work.
>>
>> The current problems seem to be due to Qt being slow to support Snow
>> Leopard, or maybe just slow to make Cocoa the default. I don't think
>> PyQt
>> should be expected to work around this temporary situation. I'd
>> change my
>> mind if you were to say that the Cocoa support was flakey and people
>> will
>> be sticking with Qt Carbon for some time to come.
>>
>
> Qt Cocoa is valid on Leopard (32 & 64bit). While the system Python
> executable is not 64bit, eventually the python.org Python should be.
> And Qt Carbon on Snow is also just as valid, and will probably be
> supported (when it's official) for a long time (at least the lifetime
> of Leopard), even when Qt Cocoa is standard.
As I understand it Carbon support will be dropped after Qt v4.7 (ie. after
the release that Cocoa becomes the default). I would expect Leopard to be
supported for longer.
I accept that Qt Carbon on Snow Leopard will be a valid combination for at
least a year.
Phil
More information about the PyQt
mailing list