J'essaie d'installer mpi4py à l'aide de pip install mpi4py, mais le message d'erreur suivant s'affiche:
error: Cannot find 'mpi.h' header. Check your configuration!!!
Plus tôt dans le même rapport d'erreur que j'ai,
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Quel pourrait être le problème?
Merci!
J'ai rencontré le même problème et j'ai tout d'abord résolu le problème
brew install mpich
Et alors
pip install mpi4py
Comme le dit l'erreur, il manque des bibliothèques. Je l'ai résolu en installant le paquet libopenmpi-dev
Sudo apt install libopenmpi-dev
puis installé le mpi4py en utilisant pip
Sudo pip install mpi4py
tu peux le faire:
brew install mpich
puis
Sudo find / -name mpicc
enfin
env MPICC=/yourpath/mpicc pip3 install mpi4py
Si mpi4py ne parvient pas à trouver le fichier mpi.h, le problème est probablement de savoir comment vous pointez mpi4py vers votre bibliothèque mpi existante.
$ python setup.py build --mpicc=/where/you/have/mpicc
À présent, il existe quelques cas particuliers liés à OS X. Vous devriez consulter http://mpi4py.scipy.org/docs/usrman/install.html pour voir s’ils s’appliquent.
Si quelqu'un tombe et a le même problème que moi:
Je voulais installer mpi4py en utilisant pip en tant que root:
Sudo pip install mpi4py
J'ai reçu le message d'erreur indiquant que mpi.h
était manquant lors de l'installation. Le chemin a été défini correctement, mais uniquement pour mon utilisateur, pas pour root. Par conséquent, si vous rencontrez des problèmes avec des bibliothèques/en-têtes manquants au cours de toute installation, assurez-vous que l'environnement approprié est également configuré pour root.
Comme j'utilise mpi-selector
pour sélectionner l'implémentation mpi que vous utilisez, il me suffisait d'exécuter mpi-selector
en tant que root pour tout configurer correctement, et l'installation a réussi.