【发布时间】:2023-03-25 06:35:01
【问题描述】:
我的大部分工作都是在 Windows 中完成的,并且像我喜欢的那样设置了一个好的 python27。我最近安装了 virtualBox 并在其上运行了一台 Ubuntu 机器,并试图在其上安装 PyQt4。但是,当我尝试从 PyQt4 导入时,我从 apt-get 安装并更新了所有内容
from PyQt4 import QtCore
我得到一个运行时错误:
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'
不确定所有快照业务是关于什么的。
【问题讨论】:
-
@gertvdijk:你从哪里得知它是“继任者”?请记住,诺基亚将 Qt 卖给了 Digia,这意味着开源方面可能仍然是一个“?”,而这一切都没有影响 Riverbanks 的课程。一个只是 LGPL,另一个是 GPL。 PyQt 得到积极维护。
-
在这种情况下可能不是,但我遇到了需要它的情况。 IE。在 Spyder 的开发过程中的某些时候与 Spyder 的兼容性问题。在 PyQt 出来之前,PySide 无法实现 PyQt
-
你知道你安装的 PyQt 版本和 sip 版本吗?
-
嗯,这就是我不擅长 Linux 伤害我的地方......我刚刚做了一个 apt-cache search pyqt sudo apt-get install python-qt4
-
您是手动安装 sip 还是来自 apt-get?出于某种原因,它使用了 sip 4.14.3 的开发快照,这可能不是最好的主意,因为您的 PyQt 不是最新版本
标签: python pyqt4 python-sip