当我尝试在python 2.7.9上的macosx 10.10中导入pyqt4的子模块时出现以下错误:
$ python -c "from PyQt4 import QtCore"
ImportError: dlopen(/Users/Desktop/lib/python2.7/
site-packages/PyQt4/QtCore.so, 2): Library not loaded: @rpath/QtCore.framework/Versions/5/QtCore
Referenced from: /Users/Desktop/lib/python2.7/
site-packages/PyQt4/QtCore.so
Reason: image not found
我从:
安装了pyqt4https://riverbankcomputing.com/software/pyqt/download
PyQt-mac-gpl-4.11.4.tar.gz MacOS / X源
cd PyQt-mac-gpl-4.11.4 python configure-ng.py --destdir = / Users / Desktop / lib / python2.7 / site- packages --sip-incdir = / Users / Desktop / include 使 make install
我有一个64位python 2.7.9并且我使用在线安装程序安装了qt。我没有从源代码编译它,因为这需要大量的内存。
我使用:
安装了qtqt-unified-mac-x64-2.0.2-2-online.dmg,这是一个64位的qt。
我注意到pyqt4创建的每个.so文件都引用了一些不存在的dylib。例如,QtGui.so引用libQtGui.dylib, QtWidgets.so引用libQtWidgets.dylib,等等。每个PyQt4 Qt.so应该有一个匹配的libQt.dylib,它出现了。
有谁知道如何解决这个问题?
谢谢!
答案 0 :(得分:1)
我通过卸载qt5.5并安装qt-opensource-mac-4.8.6-1.dmg解决了这个问题。安装完成后,只需重新编译pyqt4并进行安装。如下
python configure.py -q /usr/bin/qmake-4.8 -d /Library/Python/2.7/site-packages/ --sip /Library/Frameworks/Python.framework/Versions/2.7/bin/sip
make
make install
答案 1 :(得分:0)
我通过确保为同一架构安装sip和pyqt4解决了这个问题。
具体来说,我安装了带有拱旗的sip,这是我之前没有做过的。
python configure.py -d /somefolder/lib/python2.7/site-packages -e /somefolder/lib/python2.7/site-packages -p darwin-g ++ --arch x86_64
然后make make install。
后来我安装了pyqt4
python configure.py --destdir = / somefolder / lib / python2.7 / site-packages --use-arch = x86_64 使 make install
这似乎解决了我的问题,我可以导入pyqt4子模块而不会出现任何错误。