安装pyqt4-dev-tools时遇到问题
你好,我在使用PyQt4-dev-tools时遇到了一个问题,这个工具包括:
* 一个用户界面编译器(pyuic4)
* 一个资源文件生成器(pyrcc4)
* 一个翻译字符串查找工具(pylupdate)
问题出现在我想把从设计器保存下来的代码转换成模块时,使用了以下命令:
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
附言:抱歉我的英语不好
1 个回答
2
你的 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"