使用 scipy 中的 Atlas

使用 scipy 中的 Atlas

我安装的是 Ubuntu 12.04 64 位。我需要使用 python 和 scipy,我安装了它们,当我运行测试时:

python -c "import scipy; scipy.test()"

我收到消息:

导入错误:libatlas.so.3gf:无法打开共享对象文件:没有这样的文件或目录

但是,我在目录下安装了 libatlas 库/usr/lib/atlas-base。我知道我可以直接复制下面的文件/usr/lib,但我想知道如何设置 scipy 来使用 中的库usr/lib/atlas-base

答案1

您不必在任何地方复制任何内容。

您应该将图集库添加到要搜索的位置列表中ld

在目录中/etc/ld.so.conf.d您可以添加文件atlas-lib.conf。该文件应包含 的目录libatlas.so.3gf,即/usr/lib/atlas-base.

你可以通过运行来做到这一点

echo "/usr/lib/atlas-base" | sudo tee /etc/ld.so.conf.d/atlas-lib.conf

终于跑了

sudo ldconfig

进行更新ld,以便它知道这个新文件。

或者,您可以设置LD_LIBRARY_PATH在运行时包含库的路径,并且它应该在 SciPy 中可用。

答案2

对我来说,使用 virtualenv,export LD_LIBRARY_PATH=/usr/lib/atlas-base/:${LD_LIBRARY_PATH}在文件末尾.bashrc修复了它。

相关内容