Numpy: 导入错误:libopenblasp-r0-39a31c03.2.18.so:无法打开共享对象文件:没有这样的文件或目录

创建于 2016-09-21  ·  18评论  ·  资料来源: numpy/numpy

我之前可以使用 numpy,但突然它崩溃了。 我不知道为什么。 有人可以帮助我吗? 我最近使用 anaconda 安装了 tensorflow
`
Python 2.7.12 |Anaconda 自定义(64 位)| (默认,2016 年 7 月 2 日,17:42:40)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] 在 linux2
输入“帮助”、“版权”、“信用”或“许可”以获取更多信息。
Anaconda 由 Continuum Analytics 提供。
请查看: http : https://anaconda.org

导入 numpy
回溯(最近一次调用最后一次):
文件 ”",第 1 行,在
文件“/home/chentao/software/anaconda2/lib/python2.7/site-packages/numpy/初始化的.py”,线路180,在
从 。 导入 add_newdocs
文件“/home/chentao/software/anaconda2/lib/python2.7/site-packages/numpy/add_newdocs.py”,第13行,在
从 numpy.lib 导入 add_newdoc
文件“/home/chentao/software/anaconda2/lib/python2.7/site-packages/numpy/lib/初始化的.py”,8号线,在
从 .type_check 导入 *
文件“/home/chentao/software/anaconda2/lib/python2.7/site-packages/numpy/lib/type_check.py”,第11行,在
将 numpy.core.numeric 导入为 _nx
文件“/home/chentao/software/anaconda2/lib/python2.7/site-packages/numpy/core/__init__.py”,第14行,在
从 。 导入多阵列
导入错误:libopenblasp-r0-39a31c03.2.18.so:无法打开共享对象文件:没有这样的文件或目录
`

Other

最有用的评论

对我来说, @cjsg的解决方案没有用,但以下方法之一有效(在 Ubuntu 16.04 上):
conda install -c conda-forge numpy
conda install -c anaconda numpy

https://anaconda.org/conda-forge/numpy
https://anaconda.org/anaconda/numpy

所有18条评论

你能把这个贴到清单上吗? 那是提问的正确地方。 你也可以问问 anaconda 的人。

@charris你说的列表是什么意思?

我怀疑这是 Stefan vdW 在这里提到的问题: https :

也许尝试用 conda 重新安装 numpy?

谢谢,@ charris @matthew-brett 我通过用 anaconda2/envs/tensorflow/lib/python2.7/site-packages 中的 numpy 文件夹替换 numpy 文件夹 anaconda2/lib/python2.7/site-packages 解决了这个问题

我怀疑这里有一些问题需要我们解决......问题是他们安装了我们分发的官方轮子,不知何故它坏了 - AFAIK 应该不可能得到那个错误消息,所以一些神秘的事情正在发生.

当然,从长远来看,由于 conda 的限制,将 numpy wheel 安装到 anaconda 环境中通常会破坏该环境(如果 anaconda 环境中的pip install tensorflow感到困惑,我想这是某种 anaconda 错误) numpy 没有安装?),但是在安装了轮子之后,然后导入 numpy _ought_ 工作而不会丢失文件,如果有多个人点击它,那么我们最终可能不得不弄清楚......

我在 conda 环境中遇到了同样的问题,只有当我安装了具有 gpu 支持的 tensorflow 时它们才会启动。

奇怪的是,如果您首先使用 pip 安装 numpy,然后如果您安装需要它的东西(如 matplotlib)并且一切正常,则 conda 会再次安装它。

当我升级到 gpu tensorflow 时,我遇到了同样的问题,有人解决了这个问题吗?

我怀疑这里有一些问题需要我们解决……问题是他们安装了官方轮子

@njsmith你是如何推断这是轮子安装的? conda-forge numpy 似乎更有可能,它也是针对 OpenBLAS 构建的。

所有,你能准确检查你安装了哪个 numpy 版本,以及它是由 conda 还是 pip 安装的?

@rgommers :因为libopenblasp-r0-39a31c03.2.18.so是由 auditwheel 生成的错误名称,我不认为 conda-forge 使用 auditwheel。 AFAIK 获取该错误消息的唯一方法是尝试导入官方的 numpy 轮构建。

@rgommers :因为 libopenblasp-r0-39a31c03.2.18.so 是由 auditwheel 生成的错误名称,我不认为 conda-forge 使用 auditwheel

啊,有道理。 实际上,在 conda-forge 构建中没有使用审计轮。

永远不要将 numpy 轮子与 conda 混合使用。 Conda 对 numpy 进行特殊处理,并针对将要安装的 numpy 版本构建所有软件包。 对于 pip 轮,情况并非如此,因此可能会严重损坏。

啊,这一定是问题所在: https :

这看起来确实很可疑,但我仍然不明白它是如何导致 numpy 的numpy/core/multiarray.sonumpy/.libs/libopenblasp-r0-39a31c03.2.18.so断开连接的。 我刚刚下载了 tensorflow 1.1.0 py36 wheel,它似乎没有任何由 auditwheel 生成的导入......

我怀疑conda首先在anaconda2/lib/python2.7/site-packages/numpy安装 numpy,然后pip覆盖相同的位置,将.libs/libopenblasp-r0...放在那里,然后conda puts正确的 numpy 版本回来了。 或者它的一些变体 - 他们正在安装到相同的位置。

@JohnnyRisk @acbellini你能告诉我们你在问题发生前使用的确切安装命令吗?

关于这个问题的任何消息以及如何解决它?
按照此处的官方安装指南,“使用 Anaconda 安装”部分的建议,安装了带有 gpu 的 tensorflow1 后,我遇到了同样的问题。
我创建了一个新的 conda 环境,打开它,然后做了:
pip install --ignore-installed --upgrade $TF_BINARY_URL
我将 TF_BINARY_URL 设置为https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.3.0-cp34-cp34m-linux_x86_64.whl
从那以后,我无法在 conda 环境之外导入 numpy。 (虽然我可以在环境内部导入 numpy。我猜在环境内部,我正在导入 numpy 的 pip 版本,而在外部,conda 版本不知何故被 pip 版本的安装破坏了,安装了 tensorflow )。

我遇到了同样的问题——在新的 conda 环境中安装了 tensorflow,然后在我的旧环境中 numpy 停止工作。 为我修复旧环境的是删除该环境中的 numpy ( conda uninstall numpy ),用 pip ( pip install numpy ) 重新安装它,然后用 conda ( conda install numpy ) 安装在上面)。 我不完全清楚为什么这样做有效,但确实如此。 简单地用 conda 卸载然后用 conda 重新安装是行不通的。

谢谢@devonbrackbill ,它奏效了!
为了记录:我实际上进行了卸载/重新安装的第二次迭代,因为我怀疑 python 使用了 pip numpy 包。 所以,在按照你说的做之后,这就是我所做的,以及我得到的有点奇怪的输出:
pip uninstall numpy ,以某种方式卸载:
.../anaconda3/lib/python3.6/site-packages/numpy
.../anaconda3/lib/python3.6/site-packages/numpy-1.13.1-py3.6.egg-info
(numpy 包对吗?)并破坏了 numpy。 然后
conda uninstall numpy仍然被删除
numpy: 1.13.1-py36_0
'pip uninstall numpy' ,删除了:
.../anaconda3/lib/python3.6/site-packages/numpy-1.13.1.dist-info/DESCRIPTION.rst
.../anaconda3/lib/python3.6/site-packages/numpy-1.13.1.dist-info/INSTALLER
.../anaconda3/lib/python3.6/site-packages/numpy-1.13.1.dist-info/METADATA
.../anaconda3/lib/python3.6/site-packages/numpy-1.13.1.dist-info/RECORD
.../anaconda3/lib/python3.6/site-packages/numpy-1.13.1.dist-info/WHEEL
.../anaconda3/lib/python3.6/site-packages/numpy-1.13.1.dist-info/metadata.json
.../anaconda3/lib/python3.6/site-packages/numpy-1.13.1.dist-info/top_level.txt
conda install numpy
现在它起作用了!

对我来说, @cjsg的解决方案没有用,但以下方法之一有效(在 Ubuntu 16.04 上):
conda install -c conda-forge numpy
conda install -c anaconda numpy

https://anaconda.org/conda-forge/numpy
https://anaconda.org/anaconda/numpy

此页面是否有帮助?
0 / 5 - 0 等级