numpy 未定义符号:PyFPE_jbuf
numpy undefined symbol: PyFPE_jbuf
我正在尝试使用一百万首歌曲数据集,为此我必须安装 python 表、numpy、cython、hdf5、numexpr 等。
昨天我设法安装了我需要的所有东西,在遇到 hdf5 的一些问题之后,我下载了预编译的二进制包并将它们保存在我的 /bin 文件夹中,以及 /lib 中的相应库,之后我测试了这个python 脚本:http://labrosa.ee.columbia.edu/millionsong/sites/default/files/tutorial1.py.txt
它工作正常,要清楚我让它工作的方式是首先 运行 脚本并开始安装所需的依赖项,但今天我重新启动了我的笔记本电脑但它没有工作,现在它在控制台上抛出这个错误:
python2.7 script.py
returns :
import numpy as np # get it at: http://numpy.scipy.org/
from . import random
from .mtrand import *
ImportError: /home/francisco/.local/lib/python2.7/site-packages/numpy/random/mtrand.so: undefined symbol: PyFPE_jbuf
在我看来,这样的文件中缺少一个变量,我的猜测是脚本在错误的地方寻找 numpy 库,因为我安装了太多失败的东西,也许我弄坏了一些东西,但它只能工作out 因为它被加载到计算机的临时内存中。
我尝试安装 Anaconda,我创建了一个新环境并使用 anaconda 包管理器安装了包,甚至认为我列出了所有包并且它 returns :
# packages in environment at /home/francisco/anaconda2/envs/Music:
#
biopython 1.66 np110py27_0
cython 0.23.4 <pip>
hdf5 1.8.15.1 2
mkl 11.3.1 0
numexpr 2.5 np110py27_0
numpy 1.10.4 py27_1
openssl 1.0.2g 0
pillow 3.1.1 <pip>
pip 8.1.1 py27_0
pytables 3.2.2 np110py27_1
python 2.7.11 0
python-ldap 2.4.25 <pip>
readline 6.2 2
reportlab 3.3.0 <pip>
requirements 0.1 <pip>
setuptools 20.3 py27_0
sqlite 3.9.2 0
tables 3.2.2 <pip>
tk 8.5.18 0
wheel 0.29.0 py27_0
zlib 1.2.8 0
我仍然遇到同样的错误。我真的需要帮助,不知道还能尝试什么。谢谢。
最讽刺的是,我什么都没做就重新启动了我的笔记本电脑,它起作用了。不明白为什么。
我遇到了同样的问题,可能是你安装了没有Anaconda的numpy,所以有冲突,因此使用哪个numpy:那个用pip安装的还是用conda安装的。当我删除非 Anaconda numpy 时,错误消失了。
pip uninstall numpy
最初,我使用系统 /usr/bin/pip 和 anconda pip 安装了 cython。我使用系统 pip 卸载了系统 cython 并使用重新安装
conda install cython
。现在可以使用了。
我同意之前的帖子,这似乎是安装了多个版本的 numpy 造成的。对我来说,仅仅使用 pip 是不够的,因为我还安装了多个版本的 pip。
指定具体的 pip 解决了问题:
/usr/bin/pip3 uninstall numpy
对于 cython 用户:
This post 很有帮助。 post 解释说,有一些标志 (--with-fpectl),它要么在 cpython 编译期间设置,要么不设置。当使用没有该标志的 cpython 编译库时,它与设置了该标志的版本不兼容。这种效果只会在您使用 cython 时出现,因为 numpy 本身不使用此扩展。
正如 post 中进一步说明的那样,我的 Ubuntu 16.04 是用这个标志创建的,而 Conda 没有它。对我来说,具体是 hmmlearn 模块抛出了未定义的符号错误。一定是这种情况,因为它是由 Ubuntu 提供的,并且设置了标志,而不是 anaconda。所以我卸载了 hmmlearn 并从 sourcescode 手动重新安装它(不幸的是,Anaconda 不提供 hmmlearn)。 --> 有效!
首先从 /usr/local/lib/python2.7/dist-packages/numpy-1.11.0-py2.7-linux-x86_64.egg
中删除 numpy
然后使用以下命令
sudo pip install numpy scipy
我已经解决了这个错误。
我运行在特定情况下遇到这个问题。使用 Anaconda(我认为是 3)我正在创建一个新环境。以前我用 numpy 创建了一个 py3 env,不确定是否相关。但是在创建我的新 py2.7 环境时,我通过 pip 安装了一个特定的包 Ta-lib,但是对于特定的 Ta-lib 情况,出现了与 numpy 相关的相同问题的导入错误。
From this post Gaurav suggested 使用 pip 标志 --no-cache-dir 以确保在安装 numpy 期间重建。我卸载了我的 Ta-lib 和 numpy,然后通过 pip 使用这个标志重新安装它们,一切都很好。
我正在尝试使用一百万首歌曲数据集,为此我必须安装 python 表、numpy、cython、hdf5、numexpr 等。
昨天我设法安装了我需要的所有东西,在遇到 hdf5 的一些问题之后,我下载了预编译的二进制包并将它们保存在我的 /bin 文件夹中,以及 /lib 中的相应库,之后我测试了这个python 脚本:http://labrosa.ee.columbia.edu/millionsong/sites/default/files/tutorial1.py.txt
它工作正常,要清楚我让它工作的方式是首先 运行 脚本并开始安装所需的依赖项,但今天我重新启动了我的笔记本电脑但它没有工作,现在它在控制台上抛出这个错误:
python2.7 script.py
returns :
import numpy as np # get it at: http://numpy.scipy.org/
from . import random
from .mtrand import *
ImportError: /home/francisco/.local/lib/python2.7/site-packages/numpy/random/mtrand.so: undefined symbol: PyFPE_jbuf
在我看来,这样的文件中缺少一个变量,我的猜测是脚本在错误的地方寻找 numpy 库,因为我安装了太多失败的东西,也许我弄坏了一些东西,但它只能工作out 因为它被加载到计算机的临时内存中。
我尝试安装 Anaconda,我创建了一个新环境并使用 anaconda 包管理器安装了包,甚至认为我列出了所有包并且它 returns :
# packages in environment at /home/francisco/anaconda2/envs/Music:
#
biopython 1.66 np110py27_0
cython 0.23.4 <pip>
hdf5 1.8.15.1 2
mkl 11.3.1 0
numexpr 2.5 np110py27_0
numpy 1.10.4 py27_1
openssl 1.0.2g 0
pillow 3.1.1 <pip>
pip 8.1.1 py27_0
pytables 3.2.2 np110py27_1
python 2.7.11 0
python-ldap 2.4.25 <pip>
readline 6.2 2
reportlab 3.3.0 <pip>
requirements 0.1 <pip>
setuptools 20.3 py27_0
sqlite 3.9.2 0
tables 3.2.2 <pip>
tk 8.5.18 0
wheel 0.29.0 py27_0
zlib 1.2.8 0
我仍然遇到同样的错误。我真的需要帮助,不知道还能尝试什么。谢谢。
最讽刺的是,我什么都没做就重新启动了我的笔记本电脑,它起作用了。不明白为什么。
我遇到了同样的问题,可能是你安装了没有Anaconda的numpy,所以有冲突,因此使用哪个numpy:那个用pip安装的还是用conda安装的。当我删除非 Anaconda numpy 时,错误消失了。
pip uninstall numpy
最初,我使用系统 /usr/bin/pip 和 anconda pip 安装了 cython。我使用系统 pip 卸载了系统 cython 并使用重新安装
conda install cython
。现在可以使用了。
我同意之前的帖子,这似乎是安装了多个版本的 numpy 造成的。对我来说,仅仅使用 pip 是不够的,因为我还安装了多个版本的 pip。
指定具体的 pip 解决了问题:
/usr/bin/pip3 uninstall numpy
对于 cython 用户:
This post 很有帮助。 post 解释说,有一些标志 (--with-fpectl),它要么在 cpython 编译期间设置,要么不设置。当使用没有该标志的 cpython 编译库时,它与设置了该标志的版本不兼容。这种效果只会在您使用 cython 时出现,因为 numpy 本身不使用此扩展。
正如 post 中进一步说明的那样,我的 Ubuntu 16.04 是用这个标志创建的,而 Conda 没有它。对我来说,具体是 hmmlearn 模块抛出了未定义的符号错误。一定是这种情况,因为它是由 Ubuntu 提供的,并且设置了标志,而不是 anaconda。所以我卸载了 hmmlearn 并从 sourcescode 手动重新安装它(不幸的是,Anaconda 不提供 hmmlearn)。 --> 有效!
首先从 /usr/local/lib/python2.7/dist-packages/numpy-1.11.0-py2.7-linux-x86_64.egg
中删除 numpy
然后使用以下命令
sudo pip install numpy scipy
我已经解决了这个错误。
我运行在特定情况下遇到这个问题。使用 Anaconda(我认为是 3)我正在创建一个新环境。以前我用 numpy 创建了一个 py3 env,不确定是否相关。但是在创建我的新 py2.7 环境时,我通过 pip 安装了一个特定的包 Ta-lib,但是对于特定的 Ta-lib 情况,出现了与 numpy 相关的相同问题的导入错误。
From this post Gaurav suggested 使用 pip 标志 --no-cache-dir 以确保在安装 numpy 期间重建。我卸载了我的 Ta-lib 和 numpy,然后通过 pip 使用这个标志重新安装它们,一切都很好。