Ich versuche gerade mit wxpython ein GUI für meine Lan Filesharing Applikation zu schreiben. Wenn ich jedoch etwas "falsch" mache bekomme ich keine Exception sondern einen freundlichen Segfault. Mit etwas glück bekomme ich dann aus dem Backtrace von GDB raus was das Problem ist.
Meine Frage:
Ist wxpython immer so Buggy oder mach ich einfach etwas falsch?
Ich wollte eigentlich mal wxpython verwenden weil ich weis das pygtk unter Windows nicht ganz so gut funktioniert. Langsam aber sicher verliere ich jedoch die Geduld mich mit wxpython zu plagen.
Gruss,
Jonas
ps:
So sieht es derzeit aus:
http://www.myimg.de/?img=lansharkd30.jpg
wxPython verursacht segfaults
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo Jonas!veers hat geschrieben:Wenn ich jedoch etwas "falsch" mache bekomme ich keine Exception sondern einen freundlichen Segfault.
Also meine Erfahrung mit wxPython geht in die Richtung, dass es durchaus flüssig läuft. Es reagiert aber gerne mit Segfaults, wenn schwerwiegende Anordnungsfehler gemacht wurden. Damit meine ich z.B.:
- wenn ein Widget mehrmals gleichzeitig verwendet wird (z.B. in einem Notebook)
- wenn ein Widget mehreren Sizern gleichzeitig zugeordnet wird.
- Threadingfehler (strikte Trennung zwischen Threads ist Pflicht)
Mehr fällt mir jetzt nicht ein. Ich muss zu geben, dass ich noch nicht so viele Segfaults hatte und die die ich hatte, klärten sich ziemlich schnell auf.
mfg
Gerold

http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Hoi,veers hat geschrieben: Meine Frage:
Ist wxpython immer so Buggy oder mach ich einfach etwas falsch?
Wahrscheinlich liegt es an Dir

Gruß,
Christian
- veers
- User
- Beiträge: 1219
- Registriert: Mittwoch 28. Februar 2007, 20:01
- Wohnort: Zürich (CH)
- Kontaktdaten:
Habe mich von WX bereits genervt verabschiedet und bin zu GTK zurück gekehrt. Das entspricht mir mehr. Ein Beispiel will ich dennoch liefern:CM hat geschrieben:Hoi,veers hat geschrieben: Meine Frage:
Ist wxpython immer so Buggy oder mach ich einfach etwas falsch?
Wahrscheinlich liegt es an Dir. Aber im Ernst: Kannst Du ein kleines Beispiel entwerfen, was den segfault generiert? Damit könntest entweder nochmal hier nachfragen oder auf der Mailingliste. Wenn Du wirklich einen schweren Bug gefunden hast, wirst Du dort offene Türen einrennen.
Gruß,
Christian
Code: Alles auswählen
import wx
class Window(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, -1, "b000m", size = (600,400))
lst = wx.ListCtrl(self)
il = wx.ImageList(128, 128)
il.Add(wx.Bitmap("icon.png"))
lst.SetImageList(il, wx.IMAGE_LIST_NORMAL)
li = wx.ListItem()
li.SetImage(0)
li.SetText("Spam")
lst.InsertItem(li)
app = wx.App()
Window().Show()
app.MainLoop()

Mir ist aber bewusst das nichts passier solange ich eine Referenz auf il behalte.