Kivy hello world not working

2020-03-23 17:53发布

问题:

I am trying to make kivy work on my Ubuntu system. I followed the instructions from their wesbite.

But when I try to run the following hello world code from their website:

import kivy
kivy.require('1.5.1') # replace with your current kivy version !

from kivy.app import App
from kivy.uix.button import Button

class MyApp(App):
    def build(self):
        return Button(text='Hello World')

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

I get following error :

[INFO   ] Kivy v1.5.1
[INFO   ] [Logger      ] Record log in /home/malik/.kivy/logs/kivy_13-03-08_6.txt
[INFO   ] [Factory     ] 137 symbols loaded
[DEBUG  ] [Cache       ] register <kv.lang> with limit=None, timeout=Nones
[DEBUG  ] [Cache       ] register <kv.image> with limit=None, timeout=60s
[DEBUG  ] [Cache       ] register <kv.atlas> with limit=None, timeout=Nones
[DEBUG  ] [Cache       ] register <kv.texture> with limit=1000, timeout=60s
[DEBUG  ] [Cache       ] register <kv.shader> with limit=1000, timeout=3600s
[INFO   ] [Text        ] using <pygame> as text provider
[DEBUG  ] [App         ] Loading kv <./my.kv>
[DEBUG  ] [App         ] kv <./my.kv> not found
[INFO   ] [Window      ] using <pygame> as window provider
  X Error of failed request:  BadRequest (invalid request code or no such operation)
    Major opcode of failed request:  138 (ATIFGLEXTENSION)
    Minor opcode of failed request:  66 ()
    Serial number of failed request:  14
    Current serial number in output stream:  14

Has it something to do with my graphics card? I am using ATI Mobility Radeon HD 5400 graphics card.

回答1:

Finally got it working by updating Ubuntu to 12.10 Seems like the issue was the graphics driver. Now the example is working as expected. Thanks Qiongjie and qua-non.



回答2:

I follow the instruction you provided. and using the codes you provide, i have this result. See the figure . The python version is python2.7. System I use is ubuntu12.10.

The code needs super user privilege, and I ran the code from command line: sudo python demo.py

try to use 'sudo' to run it.