Lorsque j'ai essayé d'exécuter un certain fichier python, j'ai eu l'erreur suivante.
$ python [filename].py
Fatal Python error: PyThreadState_Get: no current thread
[1] 1588 abort python [filename].py
À propos, les conditions étaient les suivantes.
C'était le type d'erreur que j'ai vu pour la première fois, j'ai donc recherché quelle en était la cause, et en un mot, (depuis le début?) Quelque chose s'est mal passé entre le python fourni avec le Mac et le python installé avec brew. Il semble qu'ils sont en conflit les uns avec les autres. Je ne connais pas la raison, mais peut-être que ce n'était pas bon que Brew ait géré la gestion de python.
En disant cela, j'ai désinstallé le python de brew.
brew uninstall python
Voilà la solution. Vous pouvez maintenant l'exécuter en toute sécurité. La cause est probablement que les deux versions de python sont différentes (mac est 2.7.6 et brew est 2.7.9), et le chemin ne fonctionne pas bien à cause de cela, mais je ne comprends pas bien. Cependant, puisque les dernières tâches sont accumulées, je ferai semblant de ne pas le voir.
Si quelqu'un le connaît, j'apprécierais que vous me disiez facilement la cause.
Selon le développeur de gurobi Greg Glockner, gurobi ne prend en charge que python, qui est installé par défaut sur OSX. En d'autres termes, il n'y a pas d'autre choix que de rétrograder le python de brew, de désinstaller (effacer) ou de dissocier (pause).
Au fait, j'ai décidé de dissocier. Pour le moment, tout simplement
brew unlink python
Arrêtez-vous à et lorsque cela est nécessaire
brew link python
C'est une traduction pour faire revivre, c'est vraiment facile! Ou seulement lors de l'exécution de gurobi en python
import os
os.system('brew unlink python')
(Contenu d'exécution)
os.system('brew link python')
Il peut être plus facile d'écrire comme ça.
Je ne pense pas que cela ait été résolu, mais j'ai été rafraîchi parce que j'ai en quelque sorte trouvé la cause.
Recommended Posts