Numpy: ImportError : libopenblasp-r0-39a31c03.2.18.so : impossible d'ouvrir le fichier d'objet partagé : aucun fichier ou répertoire de ce type

Créé le 21 sept. 2016  ·  18Commentaires  ·  Source: numpy/numpy

Je peux utiliser numpy avant, mais tout à coup, il est tombé en panne. Je ne sais pas pourquoi. Quelqu'un peut-il m'aider? J'ai récemment installé tensorflow en utilisant anaconda
`
Python 2.7.12 |Anaconda personnalisé (64 bits)| (par défaut, le 2 juillet 2016, 17:42:40)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] sur linux2
Tapez "aide", "droit d'auteur", "crédits" ou "licence" pour plus d'informations.
Anaconda vous est présenté par Continuum Analytics.
Veuillez consulter : http://continuum.io/thanks et https://anaconda.org

importer numpy
Traceback (appel le plus récent en dernier) :
Déposer "", ligne 1, dans
Fichier "/home/chentao/software/anaconda2/lib/python2.7/site-packages/numpy/ init .py", ligne 180, dans
de . importer add_newdocs
Fichier "/home/chentao/software/anaconda2/lib/python2.7/site-packages/numpy/add_newdocs.py", ligne 13, dans
depuis numpy.lib importer add_newdoc
Fichier "/home/chentao/software/anaconda2/lib/python2.7/site-packages/numpy/lib/ init .py", ligne 8, dans
à partir de l'importation .type_check *
Fichier "/home/chentao/software/anaconda2/lib/python2.7/site-packages/numpy/lib/type_check.py", ligne 11, dans
importer numpy.core.numeric en tant que _nx
Fichier "/home/chentao/software/anaconda2/lib/python2.7/site-packages/numpy/core/__init__.py", ligne 14, dans
de . importer multiarray
ImportError : libopenblasp-r0-39a31c03.2.18.so : impossible d'ouvrir le fichier d'objet partagé : aucun fichier ou répertoire de ce type
`

Other

Commentaire le plus utile

Pour moi, la solution de @cjsg n'a pas fonctionné, mais l'un des éléments suivants a fonctionné (sur Ubuntu 16.04):
conda install -c conda-forge numpy ou
conda install -c anaconda numpy

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

Tous les 18 commentaires

Pouvez-vous poster ceci sur la liste ? C'est le bon endroit pour poser des questions. Vous pouvez également demander aux gens d'anaconda.

@charris qu'entends-tu par liste ?

Je soupçonne que c'est le problème auquel Stefan vdW faisait référence ici : https://github.com/scipy/scipy.org/pull/179#issuecomment -247179912

Essayez peut-être de réinstaller numpy avec conda?

Merci, @charris @matthew-brett J'ai résolu ce problème en remplaçant le dossier numpy anaconda2/lib/python2.7/site-packages par le dossier numpy dans anaconda2/envs/tensorflow/lib/python2.7/site-packages

Je soupçonne qu'il y a un problème à résoudre ici... le problème est qu'ils ont installé la roue officielle que nous distribuons et qu'elle est cassée d'une manière ou d'une autre - AFAIK, il ne devrait pas être possible d'obtenir ce message d'erreur, donc quelque chose de mystérieux se passe .

Bien sûr, l'installation de la roue numpy dans un environnement anaconda va généralement casser cet environnement à long terme en raison des limitations de conda (et je suppose que c'est une sorte de bogue anaconda si pip install tensorflow dans un environnement anaconda devient confus et pense numpy n'est pas installé ?), mais après avoir installé la roue, l'importation de numpy _devrait_ fonctionner sans fichiers manquants, et si plusieurs personnes le touchent, nous devrons probablement le comprendre éventuellement ...

J'ai le même problème dans les environnements conda, et ils n'ont commencé que lorsque j'ai installé tensorflow avec le support gpu.

Bizarrement, si vous installez d'abord numpy avec pip, puis conda l'installe à nouveau si vous installez quelque chose qui le nécessite (comme matplotlib) et tout fonctionne bien.

J'ai le même problème lors de la mise à niveau vers gpu tensorflow, quelqu'un a-t-il résolu ce problème?

Je soupçonne qu'il y a un problème à résoudre ici... le problème est qu'ils ont installé la roue officielle

@njsmith comment avez-vous déduit qu'il s'agissait d'une installation de roue ? Le numpy conda-forge semble plus probable, qui est également construit contre OpenBLAS.

Tous, pouvez-vous vérifier exactement quelle version de numpy vous avez installée et si elle a été installée par conda ou pip ?

@rgommers : parce que libopenblasp-r0-39a31c03.2.18.so est un nom mutilé généré par auditwheel, et je ne pense pas que conda-forge utilise auditwheel. AFAIK, le seul moyen d'obtenir ce message d'erreur est d'essayer d'importer les versions officielles de la roue numpy.

@rgommers : parce que libopenblasp-r0-39a31c03.2.18.so est un nom mutilé généré par auditwheel, et je ne pense pas que conda-forge utilise auditwheel

Ah, c'est logique. En effet, aucune utilisation de la roue d'audit dans le build conda-forge.

Mélanger des roues numpy avec du conda ne doit jamais être fait. Conda traite les cas spéciaux numpy et construit tous les packages avec la version numpy qui va être installée. Pour les roues à pépins, ce n'est pas le cas, ce qui présente un risque de casse grave.

Ah, ça doit être le problème : https://github.com/conda-forge/tensorflow-feedstock/blob/master/recipe/build.sh. Le package conda est une roue reconditionnée plutôt qu'une compilation à partir des sources. C'est donc lié à un numpy qui n'est alors pas disponible. Je ne sais pas exactement comment obtenir le retraçage signalé ici, mais cela semble malsain.

Cela semble suspect, mais je ne comprends toujours pas comment cela pourrait déconnecter numpy/core/multiarray.so de numpy de numpy/.libs/libopenblasp-r0-39a31c03.2.18.so . Et je viens de télécharger la roue tensorflow 1.1.0 py36, et elle ne semble pas contenir d'importations générées par la roue d'audit...

Je soupçonne que conda installe d'abord numpy dans anaconda2/lib/python2.7/site-packages/numpy , et pip écrase ensuite ce même emplacement, y mettant .libs/libopenblasp-r0... , puis conda met la bonne version numpy en arrière. Ou une variante de cela - ils s'installent au même endroit.

@JohnnyRisk @acbellini pouvez-vous s'il vous plaît nous donner les commandes d'installation exactes que vous avez utilisées avant que le problème ne survienne ?

Des nouvelles de ce problème et comment le résoudre ?
J'ai le même problème après avoir installé tensorflow1 avec gpu comme recommandé dans les directives d'installation officielles ici , section 'Installation avec Anaconda'.
J'ai créé un nouvel environnement conda, je l'ai ouvert, puis j'ai fait :
pip install --ignore-installed --upgrade $TF_BINARY_URL
où j'ai défini TF_BINARY_URL sur https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.3.0-cp34-cp34m-linux_x86_64.whl .
Depuis lors, je ne peux plus importer numpy en dehors de l'environnement conda. (Bien que je puisse importer numpy à l'intérieur de l'environnement. Je suppose qu'à l'intérieur de l'environnement, j'importe la version pip de numpy, et à l'extérieur, la version conda a été cassée par l'installation de la version pip, qui est venue avec l'installation de tensorflow ).

J'ai eu le même problème - installé tensorflow dans un nouvel environnement conda, puis numpy dans mon ancien environnement a cessé de fonctionner. Ce qui a corrigé l'ancien environnement pour moi, c'était de supprimer numpy dans cet environnement ( conda uninstall numpy ), de le réinstaller avec pip ( pip install numpy ), puis de l'installer par dessus avec conda ( conda install numpy ). Je ne suis pas tout à fait clair pourquoi cela a fonctionné, mais c'est le cas. La simple désinstallation avec conda puis la réinstallation avec conda n'ont pas fonctionné.

Merci @devonbrackbill , ça a marché !
Pour mémoire : j'ai en fait fait une deuxième itération de désinstallation/réinstallation, car je soupçonnais python d'utiliser le paquet pip numpy. Donc, après avoir fait ce que vous avez dit, voici ce que j'ai fait et les sorties quelque peu étranges que j'ai obtenues :
pip uninstall numpy , qui a en quelque sorte désinstallé :
.../anaconda3/lib/python3.6/site-packages/numpy
.../anaconda3/lib/python3.6/site-packages/numpy-1.13.1-py3.6.egg-info
(paquets numpy, n'est-ce pas ?) et s'est cassé numpy. Puis
conda uninstall numpy qui a toujours été supprimé
numpy : 1.13.1-py36_0
'pip uninstall numpy' , qui a supprimé :
.../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
et maintenant ça marche !

Pour moi, la solution de @cjsg n'a pas fonctionné, mais l'un des éléments suivants a fonctionné (sur Ubuntu 16.04):
conda install -c conda-forge numpy ou
conda install -c anaconda numpy

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

Cette page vous a été utile?
0 / 5 - 0 notes