【发布时间】:2018-01-28 20:50:36
【问题描述】:
我在 linux mint 18.2 中安装了 QGIS 2.18.11 没有问题。我可以运行 QGIS,但是当我想在终端中使用 pyuic4 -o dialog.py dialog.ui 将 dialog.ui 转换为 dialog.py 时,我收到以下错误:
发生意外错误。 检查您是否使用最新版本的 PyQt 并将错误报告发送到 support@riverbankcomputing.com,包括以下信息:
- 您的 PyQt (4.11.4) 版本
- 导致此错误的 UI 文件
- pyuic4 的调试输出(调用 pyuic4 时使用 -d 标志)
在pyuic4 -o dialog.py dialog.ui -d 我收到以下错误:
Traceback(最近一次调用最后一次):
文件“/usr/lib/python2.7/dist-packages/PyQt4/uic/port_v2/invoke.py”,第 34 行,调用 exit_status = driver.invoke()
文件“/usr/lib/python2.7/dist-packages/PyQt4/uic/driver.py”,第 59 行,调用 self._generate()
文件“/usr/lib/python2.7/dist-packages/PyQt4/uic/driver.py”,第 98 行,在 _generate self._opts.resource_suffix 中)
文件“/usr/lib/python2.7/dist-packages/PyQt4/uic/init.py”,第 173 行,在 compileUi winfo = compiler.UICompiler().compileUi(uifile , pyfile, from_imports, resource_suffix)
init CompilerCreatorPolicy()) 中的文件“/usr/lib/python2.7/dist-packages/PyQt4/uic/Compiler/compiler.py”,第 55 行
文件“/usr/lib/python2.7/dist-packages/PyQt4/uic/uiparser.py”,第 170 行,在 init self.factory = QObjectCreator(creatorPolicy)
文件“/usr/lib/python2.7/dist-packages/PyQt4/uic/objcreator.py”,第 94 行,在 init modinfo = plugin_locals"moduleInformation"
文件“”,第 52 行,在 moduleInformation 中
文件“/usr/lib/python2.7/dist-packages/qgis/init.py”,第 26 行,从 qgis.PyQt 导入 QtCore
文件“/usr/lib/python2.7/dist-packages/qgis/PyQt/QtCore.py”,第 28 行,在 sip.setapi(api, 2) 中
ValueError:API 'QDate' 已设置为版本 1
在下一次尝试中,我在终端中使用了以下命令:
sudo apt-get remove --purge python-qt4
sudo apt-get clean
sudo apt-get install python-qt4
sudo apt install pyqt4-dev-tools
在这个阶段,我可以通过pyuic4 -o dialog.py dialog.ui 命令将dialog.ui 转换为dialog.py,但是当我想运行QGIS 时,它会从linux 中删除。我该如何解决这个问题?
【问题讨论】:
-
您是如何安装 QGIS 的?您的要求是什么?
-
我基于
http://www.youtube.com/channel/UCcSNQL8HppF5uD2KRkn1Obw安装了QGIS。我想构建一个QGIS插件,所以我需要将qt设计器设计的qt.ui文件转换为python文件。 -
写视频链接,而不是 youtube 频道,如果您描述问题中的步骤也会有所帮助。
-
我建议你按照你官方使用的步骤,或者直接编译代码,因为你的情况是库的问题。 qgis.org/en/site/forusers/alldownloads.html#debian-ubuntu
标签: python linux user-interface pyqt4 qgis