【问题标题】:ImportError when importing scipy.stats, undefined symbol (scipy version 0.14.0)导入 scipy.stats 时出现 ImportError,未定义符号(scipy 版本 0.14.0)
【发布时间】:2014-05-24 19:26:18
【问题描述】:

我刚刚升级到 Scipy 0.14.0 和 Ubuntu 14.04。现在,当我尝试导入统计信息时,我得到了 ImportError。

import scipy.stats as stats

Traceback (most recent call last):
  File "/home/user1/Documents/test/importTest/importScipy.py", line 1, in <module>
    import scipy.stats as stats
  File "/usr/local/lib/python2.7/dist-packages/scipy/stats/__init__.py", line 334, in <module>
    from .stats import *
  File "/usr/local/lib/python2.7/dist-packages/scipy/stats/stats.py", line 181, in <module>
    import scipy.special as special
  File "/usr/local/lib/python2.7/dist-packages/scipy/special/__init__.py", line 548, in <module>
    from .basic import *
  File "/usr/local/lib/python2.7/dist-packages/scipy/special/basic.py", line 17, in <module>
    from . import orthogonal
  File "/usr/local/lib/python2.7/dist-packages/scipy/special/orthogonal.py", line 90, in <module>
    from scipy import linalg
  File "/usr/local/lib/python2.7/dist-packages/scipy/linalg/__init__.py", line 159, in <module>
    from .misc import *
  File "/usr/local/lib/python2.7/dist-packages/scipy/linalg/misc.py", line 5, in <module>
    from . import blas
  File "/usr/local/lib/python2.7/dist-packages/scipy/linalg/blas.py", line 145, in <module>
    from scipy.linalg import _fblas
ImportError: /usr/local/lib/python2.7/dist-packages/scipy/linalg/_fblas.so: undefined symbol: clange_

【问题讨论】:

  • 你是如何安装 scipy 的?
  • sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose

标签: python-2.7 scipy importerror python-import


【解决方案1】:

从源安装解决了这个问题。

首先下载 numpy 和 scipy 压缩包。

然后在我的机器上找到 BLAS 和 LAPACK *.so 文件。我在 /usr/lib/ 中找到了它们。如果它们不存在,您可以安装它们。我使用标准的 Ubuntu finder 来定位它们:

find -iname 'libblas.so'
find -iname 'liblapack.so'

所以我为安装设置了一些环境变量。

export BLAS=/usr/lib/libblas.so
export LAPACK=/usr/lib/liblapack.so

然后我下载了 numpy 和 scipy 的源压缩包,解压缩压缩包,然后通过 cd 安装到安装目录中并

python setup.py build
sudo python setup.py install

注意:您可能需要指定安装目录。

欢迎评论。也许有更好的方法。

【讨论】:

    【解决方案2】:

    问题与Scipy 缺少对LAPACK 的正确引用有关。我按照@jtorca 建议的说明进行操作,发现您甚至不需要通过 tarball 进行安装。对我来说,以下方法可以解决问题:

    apt-get install libopenblas-dev liblapack-dev
    export BLAS=/usr/lib/libblas.so
    export LAPACK=/usr/lib/liblapack.so
    pip install numpy
    pip install scipy
    

    【讨论】:

      猜你喜欢
      • 2015-01-16
      • 2013-07-03
      • 1970-01-01
      • 2012-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-24
      • 1970-01-01
      相关资源
      最近更新 更多