Referenz: https://forums.leapmotion.com/forum/support/community-support/os-x/3169-python-pythreadstate-get-no-current-thread
Wenn Sie versuchen, LeapMotion mit Python auszuführen, das von Homebrew eingeführt oder von Ihnen selbst erstellt wurde
python
Fatal Python error: PyThreadState_Get: no current thread
Ich denke, dass ein Fehler wie dieser auftreten wird und nicht funktionieren wird.
Dies liegt daran, dass die Abhängigkeit des Objekts "LeapPython.so", das eine Brücke zwischen der Leap-Schnittstelle und Python bildet, für Python gilt, das mit dem Mac gebündelt ist.
Ich werde das lösen.
Sie benötigen die Befehle otool
und install_name_tool
. Ich denke, dies erforderte X-Code-Befehlszeilentools. Wenn Sie den Befehl nicht finden können, installieren Sie ihn bitte zuerst.
Untersuchen Sie zuerst mit otool.
$ otool -L LeapPython.so
LeapPython.so:
@loader_path/LeapPython.so (compatibility version 0.0.0, current version 0.0.0)
/Library/Frameworks/Python.framework/Versions/2.7/Python (compatibility version 2.7.0, current version 2.7.0)
@loader_path/libLeap.dylib (compatibility version 0.7.0, current version 1.0.9)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)
/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 56.0.0)
Der Teil von "/Library/Frameworks/Python.framework/Versions/2.7/Python (Kompatibilitätsversion 2.7.0, aktuelle Version 2.7.0)" ist der problematische Teil. Schreiben Sie dies neu.
Es ist wie "install_name_tool [-change old_path new_path]". In meiner Umgebung sieht es so aus: Bitte ändern Sie den Teil new_path entsprechend der Umgebung jeder Person.
$ install_name_tool -change /Library/Frameworks/Python.framework/Versions/2.7/Python /usr/local/Cellar/python/2.7.6_1/Frameworks/Python.framework/Versions/Current/lib/libpython2.7.dylib LeapPython.so
Es scheint, dass es funktionieren wird, wenn Sie dasselbe mit Macports und Ihrem eigenen Build tun. Eine weitere Einschränkung ist, dass das Ereignis on_frame beim Ausführen von tmux nicht ausgelöst wird.
Recommended Posts