2017-03-03 2 views
0

ich die folgende Fehlermeldung erhalten, wenn selbst die einfachsten Kivy Anwendungen zu laufen versuchen:Einfache Kivy App stürzt ab (release entsperrt sperren)

C:\Users\kprice\Desktop>python test.py 
[INFO ] [Logger  ] Record log in C:\Users\kprice\AppData\Roaming\SPB_16.6\.kivy\logs\kivy_17-03-03_57.txt 
[INFO ] [Kivy  ] v1.9.2.dev0, git-9f2daa0, 20170302 
[INFO ] [Python  ] v3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 bit (AMD64)] 
[INFO ] [Factory  ] 193 symbols loaded 
[INFO ] [Image  ] Providers: img_tex, img_dds, img_sdl2, img_gif (img_pil, img_ffpyplayer ignored) 
[INFO ] [Text  ] Provider: sdl2 
[INFO ] [OSC   ] using <thread> for socket 
[INFO ] [Window  ] Provider: sdl2 
[INFO ] [GL   ] Using the "OpenGL" graphics system 
[INFO ] [GL   ] GLEW initialization succeeded 
[INFO ] [GL   ] Backend used <glew> 
[INFO ] [GL   ] OpenGL version <b'4.3.0 - Build 10.18.15.4256'> 
[INFO ] [GL   ] OpenGL vendor <b'Intel'> 
[INFO ] [GL   ] OpenGL renderer <b'Intel(R) HD Graphics 4400'> 
[INFO ] [GL   ] OpenGL parsed version: 4, 3 
[INFO ] [GL   ] Shading version <b'4.30 - Build 10.18.15.4256'> 
[INFO ] [GL   ] Texture max size <16384> 
[INFO ] [GL   ] Texture max units <32> 
[INFO ] [Shader  ] fragment shader: <b"WARNING: 0:6: '' : #version directive missing"> 
[INFO ] [Shader  ] vertex shader: <b"WARNING: 0:6: '' : #version directive missing"> 
[INFO ] [Window  ] auto add sdl2 input provider 
[INFO ] [Window  ] virtual keyboard not allowed, single mode, not docked 
Traceback (most recent call last): 
    File "test.py", line 13, in <module> 
    MyApp().run() 
    File "C:\Users\kprice\AppData\Local\Programs\Python\Python36\lib\site-packages\kivy\app.py", line 802, in run 
    root = self.build() 
    File "test.py", line 10, in build 
    return Label(text='Hello world') 
    File "C:\Users\kprice\AppData\Local\Programs\Python\Python36\lib\site-packages\kivy\uix\label.py", line 291, in __init__ 
    self._trigger_texture() 
    File "kivy\_clock.pyx", line 75, in kivy._clock.ClockEvent.__call__ (kivy\_clock.c:2223) 
RuntimeError: release unlocked lock 

Der Code für die Anwendung ist wie folgt:

from kivy.app import App 
from kivy.uix.label import Label 

class MyApp(App): 

    def build(self): 
     return Label(text='Hello world') 

if __name__ == '__main__': 
    MyApp().run() 

Irgendwelche Ideen, warum selbst das grundlegendste Programm zu stürzen scheint?

+1

Ich habe Python entfernt und neu installiert, als ich Python 2.7 und Python 3.6 installiert hatte und ich denke, ich habe die Kivy-Installation hochgedrückt .... Scheint jetzt zu arbeiten. –

Antwort

0

Das war ein typo für eine Änderung in der kivy.clock Code. Es hat im Grunde die Methode zweimal aufgerufen, was es nicht tun sollte (keine Threadsperre zum Freigeben).

Ich bin nicht sicher, ob es wegen Cython oder wegen Windows ist, aber ich glaube, dass Fehler eine ThreadError zurückgeben sollte. Es gibt zu wenig RuntimeError s in Kivy, also bin ich nicht sicher, warum es eine falsche Art von Fehler zurückgibt.