我正在尝试在 Ubuntu 18.4 上安装 QGIS,因此我添加了这个 repo:
sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable
sudo apt-get update
最后更新了我的来源并安装了 QGis:
sudo apt update
sudo apt install qgis
但是在运行应用程序时出现这些错误:
groot@groot-Product:~$ qgis
"<font color=\"red\">Couldn't load SIP module.<br>Python support will be disabled.</font><br><pre><br>Traceback (most recent call last):<br> File \"<string>\", line 1, in <module><br> File \"/usr/lib/python3/dist-packages/qgis/__init__.py\", line 72, in <module><br> from qgis.PyQt import QtCore<br> File \"/usr/lib/python3/dist-packages/qgis/PyQt/QtCore.py\", line 26, in <module><br> from PyQt5.QtCore import *<br>ImportError: /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.12' not found (required by /home/groot/.local/lib/python3.6/site-packages/PyQt5/QtCore.so)<br><br></pre>Python version:<br>3.6.7 (default, Oct 22 2018, 11:32:17) <br>[GCC 8.2.0]<br><br>QGIS version:<br>3.4.6-Madeira 'Madeira', exported<br><br>Python path:<br>['/usr/share/qgis/python', '/home/groot/.local/share/QGIS/QGIS3/profiles/default/python', '/home/groot/.local/share/QGIS/QGIS3/profiles/default/python/plugins', '/usr/share/qgis/python/plugins', '/usr/lib/python36.zip', '/usr/lib/python3.6', '/usr/lib/python3.6/lib-dynload', '/home/groot/.local/lib/python3.6/site-packages', '/usr/local/lib/python3.6/dist-packages', '/usr/lib/python3/dist-packages']"
"<font color=\"red\">An error occurred during execution of following code:<br><tt>qgis.utils.uninstallErrorHook()</tt></font><br><pre><br>Traceback (most recent call last):<br> File \"<string>\", line 1, in <module><br>NameError: name 'qgis' is not defined<br><br></pre>Python version:<br>3.6.7 (default, Oct 22 2018, 11:32:17) <br>[GCC 8.2.0]<br><br>QGIS version:<br>3.4.6-Madeira 'Madeira', exported<br><br>Python path:<br>['/usr/share/qgis/python', '/home/groot/.local/share/QGIS/QGIS3/profiles/default/python', '/home/groot/.local/share/QGIS/QGIS3/profiles/default/python/plugins', '/usr/share/qgis/python/plugins', '/usr/lib/python36.zip', '/usr/lib/python3.6', '/usr/lib/python3.6/lib-dynload', '/home/groot/.local/lib/python3.6/site-packages', '/usr/local/lib/python3.6/dist-packages', '/usr/lib/python3/dist-packages']"
退出应用程序后,出现以下错误:
"<font color=\"red\">An error occurred during execution of following code:<br><tt>qgis.utils.uninstallErrorHook()</tt></font><br><pre><br>SystemError: PyEval_EvalCodeEx: NULL globals<br><br></pre>Python version:<br><br><br>QGIS version:<br>3.4.6-Madeira 'Madeira', exported<br><br>Python path:<br>"
groot@groot-Product:~$
答案1
我找到了解决问题的方法,因此我向陷入我这种情况的人回答了我的问题:
PyPI 中的 PyQt 与已安装的 Qt 不兼容
所以我使用 pip3 删除了 pyqt5:
pip3 uninstall PyQt5
并从 apt 安装 PyQt5:
sudo apt-get install python3-pyqt5
现在 Qgis 似乎可以正常工作。
答案2
在 Manjaro / ArchLinux 上为我工作。
我注意到使用 时不会出现此错误sudo qgis
,但这不是一个好的解决方案,因为我想使用我的主目录,而不是 root 的目录。提示权限和路径不知为何关闭。
pip uninstall PyQt5 # defaults to pip3
sudo pacman -S python-pyqt5 python-pyqt5-sip
现在 QGIS 已成功启动 python。