【问题标题】:Anaconda Spyder Qt library error on launchAnaconda Spyder Qt 库启动时出错
【发布时间】:2014-02-08 08:59:08
【问题描述】:

在 Linux Mint 13 上从 Anaconda python 安装启动 Spyder 时,出现以下错误:

Cannot mix incompatible Qt library (version 0x40801) with this library (version 0x40805)
Aborted

$PATH 是

   /home/ron/anaconda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

有人找到解决办法了吗?

Anaconda 网站指出 Spyder 可能无法在 Linux 机器上正确启动。

http://docs.continuum.io/anaconda/

*** 已解决 我有点害羞。发现我将 Anaconda 安装为 sudo。按照文档中的说明重新安装,一切正常。感谢大家的帮助。

【问题讨论】:

  • 听起来你需要 Qt 4.8.5 二进制文件。如何做到这一点取决于您,但可能通过编译 Qt 4.8.5。
  • 谢谢约翰。我感谢您的帮助。我对 stackoverflow 帮助的质量和数量印象深刻。
  • 你有LD_LIBRARY_PATH设置吗?
  • Asmeurer,我没有设置 LD_LIBRARY_PATH。我应该设置为 Anaconda lib 文件夹吗?

标签: python spyder anaconda


【解决方案1】:

我在 kubuntu alpha 上使用 anaconda 1.8。它使用 qt 4.8.5。我可以看到它

find $ANACONDA/lib -name '*.4.8.5'

我的系统 qt 库是 4.8.6。我可以看到它

find /usr/lib -name "*so.4.8.6"

如果你的系统 qt 版本是 4.8.5,anaconda 是 4.8.1——也许你可以更新 anaconda?尝试运行

conda update conda
conda update anaconda

编辑

似乎问题在于 spyder 拾取您的系统库。我尝试使用 evnironment 变量 LD_LIBRARY_PATH 和各种与 qt 相关的来屏蔽这些库。但没有任何效果。然而,简单地将系统库复制到$ANACONDA/lib 即可解决问题。

转到$ANACONDA/lib 并将所有*.4.8* 文件移动到另一个目录。然后转到/usr/lib/x86_64-linux-gnu(您使用的是64位吗?)并将所有*.4.8*复制到$ANACONDA/lib。就是这样:运行spyder

qtlibs 通常存储为文件和链接:例如,如果有一个libQtGui.so.4.8.6 文件,那么还有一个符号链接libQtGui.so.4.8。您也必须复制/移动链接。

编辑 2

a suggestion

unset QT_PLUGIN_PATH

我尝试将其设置为空 export QT_PLUGIN_PATH=,但没有尝试将其设置为 unset

【讨论】:

  • Adobe,Anaconda lib 文件夹包含几个 libQt... 文件,包括 libQtCore.so.4.8.5。我的蟒蛇版本是1.8。我运行了上面的更新过程,但没有任何变化。非常感谢您的帮助!
  • 我放弃了,从头开始完整安装了 python、ipython、ipython notebook 和 spyder。现在一切正常。
  • 谢谢,它对我有用。我做了conda update conda && conda update anaconda 然后unset QT_PLUGIN_PATH。在 Fedora 20 x86_64 上。
  • 命令unset QT_PLUGIN_PATH 对我有用。谢谢
【解决方案2】:

(Spyder dev here) 仅作记录,这是 Anaconda 中的 know bug,有望在其下一个版本中得到修复(将于 2014 年 10 月发布)。

【讨论】:

  • 刚刚更新到 Anaconda 2.1.0(10 月发布)。现在 spyder 停止工作...在更新之前工作(Windows 64 位)
【解决方案3】:

对我来说,最好的解决方案是(受@Adobe 的回答启发)转到安装 Anaconda 的目录,然后转到子目录 lib 并将所有文件 libQt* 移开(我移动了它们到我为此目的创建的临时子目录中)。 Anaconda 现在将获取系统库。我预计当我更新 Anaconda 并安装新的 Qt 库时会出现问题,但那是以后再说。

我的版本是 conda 3.9.1,带有 python 3.4.3 和 qt 4.8.5,安装在 Debian 测试中(截至今日),带有 libqtcore4 版本 4:4.8.6+git64-g5dc8b2b+dfsg-3;架构是amd64。

取消设置 QT_PLUGIN_PATH 和/或将其设置为空确实在第一个实例中起作用,因为它允许我启动 spyder,但它有一些缺点。最重要的是,每当我尝试使用 matplotlib 和内联图形绘制某些东西时,我都会收到错误消息“似乎内核意外死亡”而不是我想要的情节。

【讨论】:

    猜你喜欢
    • 2017-07-10
    • 2020-12-30
    • 2020-03-27
    • 2019-07-12
    • 1970-01-01
    • 2019-12-16
    • 2022-08-22
    • 1970-01-01
    • 2021-02-27
    相关资源
    最近更新 更多