web-dev-qa-db-fra.com

numpy undefined symbol: PyFPE_jbuf

J'essaie d'utiliser le jeu de données One Million Song. Pour ce faire, j'ai dû installer des tables python, numpy, cython, hdf5, numexpr, etc. 

Hier, j’ai réussi à installer tout ce dont j’avais besoin, et après avoir eu quelques problèmes avec hdf5, j’ai téléchargé les paquets binaires précompilés et les ai sauvegardés dans mon dossier/bin, ainsi que les bibliothèques respectives dans/lib, après avoir testé ce script python: http://labrosa.ee.columbia.edu/millionsong/sites/default/files/tutorial1.py.txt

et cela a bien fonctionné, pour être clair, la façon dont je l’ai fait fonctionner était d’abord d’exécuter le script et de commencer à installer les dépendances nécessaires, mais aujourd’hui, j’ai redémarré mon ordinateur portable et cela ne fonctionnait pas. Maintenant, cette erreur m’a jeté sur la console:

python2.7 script.py 

résultats : 

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

il me semble qu’il existe une variable manquante dans un tel fichier, j’imagine que le script recherche la bibliothèque numpy au mauvais endroit, car j’ai fait tant d’installations échouées. Peut-être que j’ai cassé quelque chose et que cela n’a fonctionné que parce qu’il était chargé. dans la mémoire temporelle de l'ordinateur. 

J'ai essayé d'installer Anaconda, et j'ai créé un nouvel environnement et installé celui-ci avec le gestionnaire de paquets anaconda. Je pensais même que je listais tout ce qui était emballé. 

# 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  

je reçois toujours la même erreur. J'ai vraiment besoin d'aide et je ne sais pas quoi essayer d'autre. Merci. 

16
frammnm

J'ai eu le même problème, vous avez probablement installé numpy sans Anaconda, il y a donc un conflit à cause de cela, lequel numpy à utiliser: celui-là installé avec pip ou avec conda Quand j'ai enlevé numpy non-Anaconda, l'erreur est partie. 

pip uninstall numpy
24

Pour les utilisateurs de cython: 

This post était utile. Le message explique qu’il existe un indicateur (--with-fpectl), qui est défini lors de la compilation de cpython ou non. Lorsqu'une bibliothèque a été compilée à l'aide d'un cpython sans cet indicateur, elle est incompatible avec une version dans laquelle cet indicateur est défini. Cet effet n'apparaît que lorsque vous utilisez cython, car numpy n'utilise pas cette extension. 

Comme indiqué dans ce message, mon Ubuntu 16.04 a été créé avec ce drapeau et Conda sans celui-ci. Pour moi, c’est précisément le module hmmlearn qui renvoie l’erreur de symbole non défini. Ce doit être le cas car il a été envoyé par Ubuntu avec le drapeau en place et non par anaconda. J'ai donc désinstallé hmmlearn et l'ai réinstallé manuellement à partir de sourcescode (Anaconda, malheureusement, n'offre pas hmmlearn). -> fonctionne!

6
BaluJr.

l'ironie à son meilleur, j'ai redémarré mon ordinateur portable sans rien faire et cela a fonctionné Je ne peux pas comprendre pourquoi.

5
frammnm

Je suis d'accord avec les publications précédentes selon lesquelles cela semble être causé par l'installation de plusieurs versions de numpy. Pour moi, il ne suffisait pas d'utiliser simplement pip, car j'avais également plusieurs versions de pip installées.

Spécifier le pip spécifique a résolu le problème:

/usr/bin/pip3 uninstall numpy
3
eatcrayons

Initialement, j'ai installé cython à l’aide du système/usr/bin/pip et d’anconda pip. J'ai désinstallé cython système à l'aide de pip système et réinstallé à l'aide de conda install cython. Fonctionne maintenant.

0
r3t2

Commencez par supprimer numpy de /usr/local/lib/python2.7/dist-packages/numpy-1.11.0-py2.7-linux-x86_64.Egg.__, puis utilisez la commande suivante

Sudo pip install numpy scipy

J'ai eu résoudre cette erreur dans mon cas.

0
kagdada hardik