【问题标题】:Trouble Installing pyqt4-dev-tools安装 pyqt4-dev-tools 时遇到问题
【发布时间】:2012-02-07 08:23:05
【问题描述】:

您好,我对 PyQt4-dev-tools 有这个问题,其中包括:
* 一个用户界面编译器(pyuic4) * 一个资源文件生成器 (pyrcc4) * 翻译字符串查找器 (pylupdate) 当我想使用以下方法将从 Designer 保存的代码转换为模块时,问题就出现了:

pyuic4 untitled.ui>test.py 

我得到这个错误:

Traceback (most recent call last):
  File "/usr/bin/pyuic4", line 3, in <module>
    import PyQt4.uic.pyuic
  File "/usr/lib/pymodules/python2.6/PyQt4/uic/pyuic.py", line 4, in <module>
    from PyQt4 import QtCore
RuntimeError: the sip module implements API v8.0 to v8.1 but the PyQt4.QtCore module requires API v7.1

我已经尝试过升级、删除并重新安装、手动安装等...

这是我所做的完整日志:http://pastebin.com/2DYfAwdC

PD对不起我的英语不好

【问题讨论】:

    标签: python pyqt4 apt-get


    【解决方案1】:

    您的 sip python 模块必须已重新安装到新版本,该版本现在与您的 PyQt 安装不兼容。我建议删除 sip、PyQt 和 Qt,然后重新安装它们。

    检查您的 apt 是否是最新的,并确认您的 pythonpath 中没有旧的 PyQt 安装。

    如果您能够自行成功导入 PyQt,请尝试比较导入路径以确保您没有拉取其他版本的 PyQt:

    # from a shell
    python -c "from PyQt4 import QtCore; print QtCore.PYQT_VERSION_STR, QtCore.QT_VERSION_STR; print QtCore.__file__"
    

    将版本和 PyQt4 位置与使用 pyuic4 时从您的回溯中导出的位置进行比较

    如果在其他位置发现 sip 问题,请尝试调整您的 PYTHONPATH 以确认:

    import sys
    sys.path.insert(0, "/usr/lib/pymodules/python2.6")
    
    from PyQt4 import QtCore
    

    如果这在没有崩溃的情况下工作,那么您可能应该从此处删除导致冲突的较新 sip:“/usr/lib/python2.6/dist-packages/sip.so”

    【讨论】:

    • 谢谢,但这是我第三次删除它们并重新安装它们。
    • 你的apt是最新的吗?版本可能不匹配。如果您手动构建这些,它肯定会起作用。
    • 如果您的意思是 apt-get update... 是的。还有 apt-get upgrade 我也忘了提到我正在运行 Ubuntu 10.04
    • 这里不执行是输出: [lexel@ ~] python -c "from PyQt4 import QtCore; print QtCore.PYQT_VERSION_STR, QtCore.QT_VERSION_STR; pr​​int QtCore.__file__" Traceback (最近调用最后):文件“”,第 1 行,在 中运行时错误:sip 模块实现 API v8.0 到 v8.1,但 PyQt4.QtCore 模块需要 API v7.1
    • 还要确保您的 sip 不在多个地方:python -c "import sip; print sip.__file__"
    猜你喜欢
    • 2018-07-06
    • 1970-01-01
    • 1970-01-01
    • 2020-06-24
    • 1970-01-01
    • 1970-01-01
    • 2014-09-11
    • 2013-12-24
    • 2020-02-27
    相关资源
    最近更新 更多