web-dev-qa-db-fra.com

Erreur n ° 15: Initialisation de libiomp5.dylib, mais libiomp5.dylib trouvé déjà initialisé

Obtenir le message d'erreur lors de l'utilisation de matplotlib:

Erreur n ° 15: initialisation de libiomp5.dylib, mais libiomp5.dylib trouvé déjà initialisé OMP: Astuce: Cela signifie que plusieurs copies du moteur d'exécution OpenMP ont été liées au programme. C'est dangereux, car cela peut dégrader les performances ou provoquer des résultats incorrects. La meilleure chose à faire est de s'assurer qu'un seul runtime OpenMP est lié au fichier processus, par exemple en évitant la liaison statique du runtime OpenMP dans n’importe quel fichier bibliothèque. En tant que solution de contournement non sécurisée, non prise en charge et non documentée, vous pouvez définissez la variable d'environnement KMP_DUPLICATE_LIB_OK = TRUE pour autoriser le fichier programme pour continuer à exécuter, mais cela peut provoquer des plantages ou en silence produire des résultats incorrects. Pour plus d'informations, s'il vous plaît voir http://www.intel.com/software/products/support/ .

5
gcamargo

Cela semble être un problème MacOS. Procédez comme suit pour résoudre le problème:

import os

os.environ['KMP_DUPLICATE_LIB_OK']='True'

Réponse trouvée à: https://github.com/dmlc/xgboost/issues/1715

12
gcamargo

Ceci est une meilleure solution, le cas échéant. Sinon, de toute façon, la solution de gcamargo fonctionnera probablement. Cependant, il est accompagné d'un avertissement "qu'il peut provoquer des plantages ou produire silencieusement des résultats incorrects"

J'ai eu la même erreur sur mon Mac avec un programme python utilisant numpy, keras et matplotlib. Je l'ai résolu avec 'conda install nomkl'.

Réponse trouvée à: https://github.com/dmlc/xgboost/issues/1715

0
sjcoding

Donc, pour ceux qui ont le même problème avec lightgbm, j’ai trouvé dans la documentation que vous pouvez

  1. pip uninstall lightgbm
  2. pip install lightgbm
  3. Exécutez ce qui suit dans anaconda environmnet (si vous utilisez Conda)
ln -sf `ls -d "$(brew --cellar libomp)"/*/lib`/* $CONDA_PREFIX/lib

Ces trois choses ont fonctionné pour moi.

0
ltjds