web-dev-qa-db-ja.com

numpy未定義シンボル:PyFPE_jbuf

One Million Song Datasetを使用しようとしていますが、これにはpython tables、numpy、cython、hdf5、numexprなどをインストールする必要がありました。

昨日、必要なものをすべてインストールできました。hdf5で問題が発生した後、プリコンパイル済みのバイナリパッケージをダウンロードして/ binフォルダーに保存し、それぞれのライブラリを/ libに保存しました。その後、このpython script:http://labrosa.ee.columbia.edu/millionsong/sites/default/files/tutorial1.py.txt

それがうまくいったのは、最初にスクリプトを実行して必要な依存関係のインストールを開始することでしたが、今日はラップトップを再起動して動作しませんでしたが、コンソールにこのエラーがスローされます:

python2.7 script.py 

戻り値:

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ライブラリを探していると思われます。なぜなら、非常に多くの失敗したインストールを行ったため、何かを壊し、ロードされたためにうまくいったコンピューターの一時記憶に。

私はAnacondaをインストールしようとしましたが、新しい環境を作成し、anacondaパッケージマネージャーでパッケージ化したものをインストールしました。

# 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  

それでも同じエラーが表示されます。私は本当に助けが必要であり、他に何をしようとするのか分からない。ありがとう。

19
frammnm

私は同じ問題を抱えていました、おそらくあなたはAnacondaなしでnumpyをインストールしたので、このために使用するnumpyの競合があります:pipまたはcondaでインストールされたもの。アナコンダ以外のnumpyを削除すると、エラーが発生しました。

pip uninstall numpy
30

Cythonユーザーの場合:

これ 投稿は役に立ちました。投稿では、いくつかのフラグ(--with-fpectl)があり、cpythonのコンパイル中に設定されるかどうかを説明しています。ライブラリがそのフラグなしでcpythonを使用してコンパイルされた場合、そのフラグが設定されているバージョンとは互換性がありません。 numpy自体はこの拡張機能を使用しないため、cythonを使用する場合にのみこの効果が現れます。

その投稿でさらに述べたように、私のUbuntu 16.04はこのフラグとCondaなしで作成されました。私にとっては、未定義のシンボルエラーをスローするモジュールhmmlearnでした。これは、anacondaではなく、フラグが設定された状態でUbuntuから出荷されたためです。そこで、私はhmmlearnをアンインストールし、 sourcescode から手動で新たにインストールしました(残念ながら、Anacondaはhmmlearnを提供していません)。 ->動作します!

9
BaluJr.

皮肉なことに、何もせずにラップトップを再起動すると、うまくいきました。理由を理解できません。

5
frammnm

Numpyの複数のバージョンがインストールされていることが原因であると思われる以前の投稿に同意します。私にとっては、複数のバージョンのpipもインストールされていたため、pipを使用するだけでは十分ではありませんでした。

特定のpipを指定すると、問題が解決しました。

/usr/bin/pip3 uninstall numpy
4
eatcrayons

最初に、システム/ usr/bin/pipとanconda pipを使用してcythonをインストールしました。システムpipを使用してシステムcythonをアンインストールし、conda install cythonを使用して再インストールしました。今すぐ動作します。

0
r3t2

最初に/usr/local/lib/python2.7/dist-packages/numpy-1.11.0-py2.7-linux-x86_64.Eggからnumpyを削除してから、次のコマンドを使用します

Sudo pip install numpy scipy

私の場合、このエラーを解決しました。

0
kagdada hardik