Ist es möglich, WxPython innerhalb Ironpython zu benutzen?
-
08-07-2019 - |
Frage
Wenn mein Ironpython-Programm wird auf die Zeile
import wx
Ich erhalte diese Mitteilung:
A first chance exception of type
'IronPython.Runtime.Exceptions.PythonImportErrorException' occurred in IronPython.dll
Additional information: No module named _core_
obwohl ich die Datei wx \ _core_.pyd haben. Auch vor dem Import versucht, ich habe die folgenden Zeilen:
sys.path.append('c:\\Python24\\Lib\\site-packages')
sys.path.append('c:\\Python24\\Lib\\site-packages\\wx-2.6-msw-unicode')
sys.path.append('c:\\Python24\\Lib\\site-packages\\wx-2.6-msw-unicode\\wx')
sys.path.append('c:\\Python24\\Lib\\site-packages\\wx-2.6-msw-unicode\\wx\\lib')
sys.path.append('c:\\Python24\\Lib\\site-packages\\wx-2.6-msw-unicode\\wxpython\\lib')
sys.path.append('c:\\Python24\\Lib\\site-packages\\wxaddons')
, die ich hoffte, dass alles finden lassen Ironpython es brauchte.
Lösung
Nein, das wird nicht funktionieren. Wx Bindungen (wie die meisten anderen "Python-Bindings") gegen CPython tatsächlich zusammengestellt.
In dieser Hinsicht sind sie nicht nur Pakete auf sys.path gefunden werden, da Sie versucht haben. Sie hängen tatsächlich auf CPython selbst. Dieses eher trockene Dokument erläutert den Prozess.
Hinweis: Es gab eine Mission durch einen Teil der Besatzung bei Resolversysteme, damit Sie CPython Bindungen mit Ironpython (genannt IronClad ), aber dies in einem frühen Stadium, und ich denke, sie auf immer Dinge wie Numpy konzentrieren Arbeits ersten, GUI-Toolkits wird immer die letzte sein, und am härtesten.
Andere Tipps
Während WxPython aus den Gründen von @Ali aufgelistet nicht verfügbar ist, möchten Sie vielleicht einen Blick auf wx.NET . Sie könnten Ironpython verwenden, anstatt diese Baugruppen zu nennen, und es sollte Cross-Plattform sein (Ich gehe davon aus, dass das, was Sie nach, oder würden Sie nur WinForms verwenden). Wenn alles, was Sie suchen API-Kompatibilität ist, ich glaube, Sie kein Glück: (