【问题标题】:Python 2.7 crashes when importing PyQt4.QtDeclarative or PyQt4.Qt on Ubuntu在 Ubuntu 上导入 PyQt4.QtDeclarative 或 PyQt4.Qt 时 Python 2.7 崩溃
【发布时间】:2016-08-02 00:00:29
【问题描述】:

前段时间(几个月?)rqt_plot 程序开始在我的机器上启动时崩溃(SIGSEGV)。我终于更深入地追踪了它,发现问题发生在python尝试导入PyQt4.QtDeclarative时。不幸的是,我不记得这是什么时候开始发生的,而且我的互联网搜索也没有任何结果。任何想法出了什么问题?我怀疑在某个地方有不兼容的包更新,但不知道如何找到根本原因。

这是一个简单的会话记录:

$ python
Python 2.7.6 (default, Jun 22 2015, 17:58:13)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from PyQt4 import QtDeclarative
Segmentation fault (core dumped)
$

这是一些系统信息:

$ uname -a
Linux [HOSTNAME] 3.13.0-63-generic #103-Ubuntu SMP Fri Aug 14 21:42:59 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
$ echo $PYTHONPATH

$ which python
/usr/bin/python
$ ls -l /usr/bin/python
lrwxrwxrwx 1 root root 9 Jan  8  2015 /usr/bin/python -> python2.7

跟进:

后来发现我在做import PyQt4.Qt的时候也遇到了同样的问题(Segmentation fault)。

【问题讨论】:

  • 您是否尝试过使用sudo apt-get install --reinstall python-qt4 重新安装python-qt4?只是想看看这是否会有所作为。
  • 是的,试试上面的apt-get install python-qt4,可能会有所作为
  • @edwinksl 我的 linux-fu 很弱;你的很强大!只需简单的重新安装即可。如果您在评论之外发布“答案”,我将奖励您赏金。这是非常值得的! =:-D
  • @aldo 啊,很高兴看到一个简单的解决方案有效。 :D

标签: python ubuntu pyqt4 python-sip qtdeclarative


【解决方案1】:

当唯一的错误消息是

时,很难诊断出段错误
Segmentation fault (core dumped)

在这种情况下,因为python-qt4 的重新安装根本不需要太多时间,我建议您通过运行来完成:

sudo apt-get install --reinstall python-qt4

编辑:看起来 OP 在执行import PyQt4.Qt 时遇到了另一个段错误。这大概和python-sip有关,是python-pyqt4的一个依赖。要摆脱段错误,请通过运行重新安装python-sip

sudo apt-get install --reinstall python-sip

【讨论】:

  • 我不知道为什么我没有首先想到这个。我尝试删除额外的“未使用”包,升级内核,拔掉我的头发......跳过了明显的解决方案。无论如何,谢谢!
  • @aldo 这发生在我们所有人身上。 :)
  • 好的,这解决了我的大部分问题,但现在import PyQt4.Qt 给了我同样的段错误。啊!
  • @aldo 这真是令人困惑。重新安装将重新安装Qt.so(以及QtDeclarative.so),所以我不确定此时发生了什么。
  • @aldo 可能值得重新安装python-sip: sudo apt-get install --reinstall python-sip
猜你喜欢
  • 2011-04-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-31
  • 1970-01-01
  • 1970-01-01
  • 2018-06-11
  • 1970-01-01
相关资源
最近更新 更多