[PyQt] Symbol not found: _sipQtConnect (Qt5 and PyQt 4.10 on OSX, 32 bit)

Glenn Ramsey gr at componic.co.nz
Fri Mar 15 02:51:00 GMT 2013


Hi,

I have built a 32 bit version of PyQt on OSX (10.8.2) using Qt5, but it doesn't
work:

Python 2.7.3 (default, Feb 26 2013, 11:03:37)
[GCC 4.2.1 Compatible Apple Clang 4.0 ((tags/Apple/clang-421.0.60))] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import PyQt4.QtCore
Traceback (most recent call last):
   File "<stdin>", line 1, in <module>
ImportError:
dlopen(/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PyQt4/QtCore.so,
2): Symbol not found: _sipQtConnect
   Referenced from:
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PyQt4/QtCore.so
   Expected in: flat namespace
  in
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PyQt4/QtCore.so

Is there a workaround for this issue?

My setup:

I'm using the git version of qt5 (5.0.x), because there is a bug in 5.0.1 that
prevents 32 bit builds on OSX, with the following config.
./configure -platform macx-clang-32 -nomake docs -nomake examples -nomake demos
-nomake tests  -nomake webkit -opensource -confirm-license -release -no-c++11

sip 4.14.4
python configure.py --arch i386

PyQt 4.10 (commercial)
python configure.py --use-arch i386

I had to change qt_macx_spec in configure.py to get it work:
#qt_macx_spec = 'macx-g++'
qt_macx_spec = 'macx-clang-32'

The python version is 2.7 from MacPorts, built as 32 bit.

I have also rebuilt both sip and PyQt4 after doing a "make clean".

Glenn


More information about the PyQt mailing list