Problematiche:
- Qt SDK di default installa le librerie a 32bit, ancora...
- per utilizzare le Qt basate su Cocoa è necessaria l'installazione di Qt a 64bit.
- python di default su Mac OS X 10.6 è un universal binary e parte a 64bit.
- sip si autoconfigura con uno script python, e pertanto, lanciandolo senza argomenti si compila a 64bit, ma a questo punto è necessario compilare PyQt4 a 64bit (cosa impossibile, dato che le Qt installate con l'SDK sono a 32bit).
- è possibile installare e compilare tutto a 32bit (cosa peraltro suggerita nella documentazione di PyQt4), ma io trovo questa soluzione particolarmente poco elegante (senza dimenticare che l'interprete python andrà sempre lanciato a 32bit esplicitamente).
Requisiti:
- Sono necessari gli strumenti di sviluppo. Tali strumenti possono essere installati in blocco semplicemente installando il pacchetto di XCode.
Soluzione:
- Ignorare l'SDK.
- Installare le librerie Qt basate su cocoa:
È possibile scaricare le Qt a 64bit basate su cocoa precompilate da questa url. L'installazione è semplice: si monta il dmg, si clicka due volte sull'installer, si gode vedendo la splendida gui dell'installer del Mac mentre lui pensa a fare tutto il lavoro sporco. Insieme alle librerie vengono installati anche tutti gli strumenti di sviluppo (il Designer, il Linguist e l'Assistant). Volendo potete installare a mano QtCreator (ma tanto non lo potrete usare con PyQt...).
- Scaricare e compilare sip:
Sip è il generatore di binding utilizzato da PyQt. È possibile scaricare i sorgenti per unix/linux/mac da questa url. Dopo aver decompresso il file, entrare nella directory che si è appena creata e digitare:
python configure.py
In questo modo verranno creati automaticamente i files necessari alla compilazione di sip. A questo punto non resta che compilare ed installare.
make
sudo make install
- Scaricare e compilare PyQt4:
PyQt4 è il vero e proprio pacchetto di binding Qt4-python. È possibile scaricarne i sorgenti da questa url. La procedura è esattamente uguale a quella necessaria per configurare/compilare/installare sip. È solamente abbastanza più lunga :(
python configure.py
make
sudo make install
Et voilà... Avete PyQt4 a 64bit con Qt a 64bit su Mac OS X Snow Leopard!
Per fare una prova veloce potete aprire l'interprete python e divertirvi un po':
>>> from PyQt4.QtCore import QT_VERSION_STR, PYQT_VERSION_STR
>>> print PYQT_VERSION_STR
4.7.3
>>> print QT_VERSION_STR
4.6.2
>>> exit() # Wooooooooooooooo!

- Login o registrati per inviare commenti
