我在Windows中完成大部分工作,并且设置了喜欢的python27。我最近安装了virtualBox,并在其上运行了Ubuntu计算机,并试图在其上安装PyQt4。我从apt-get安装并更新了所有内容,但是,当我尝试从PyQt4导入时
from PyQt4 import QtCore
我收到一个runtimeError:
RuntimeError: the sip module implements API v9.0 to v9.1 but the PyQt4.QtCore module requires API v8.1
我确信这是我将拥有Windows上要解决的知识库的问题,但是我的Linux经验不足在这里使我变得更好,并且我安装了错误的东西。该错误使我相信我的SIP版本对我的PyQt版本来说太花哨了……有人对此有任何经验吗?
编辑:如果收到错误后再次尝试导入,则似乎可以正常工作。这样做,我获得了版本信息。
cfg.pyqt_version_str
Out[9]: '4.9.3'
cfg.sip_version_str
Out[10]: '4.14.3-snapshot-55188026fe6d'
不确定所有快照业务是关于什么的。
最佳答案
我刚刚通过apt-get
测试了sip/pyqt的安装,并安装了它:
您报告的SIP版本是开发快照。我建议删除所有内容,先进行
sudo apt-get update
,然后再次进行sudo apt-get install python-sip python-qt4
。否则,您可以从源代码中获取最新的稳定版本:
如果您有混合安装,请尝试删除所有这些。使用pip可以执行
pip remove sip
。或者,您可以进入python shell,找出它在哪里,然后手动将其删除:$ python
>>> import sip
>>> print sip
# path to sip
关于python - SIP和PyQt4为什么不相处,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13981964/