是否有关于在cygwin上安装Kivy的说明?

时间:2014-10-28 12:26:32

标签: python python-2.7 cygwin ctypes kivy

我未能在Kivy上运行以下 hello world

import kivy
kivy.require('1.7.0')

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

class HelloApp(App):
    def build(self):
        return Label(text='Hello World!')

if __name__=="__main__":
    HelloApp().run()


有以下错误:

$ python hello1.py 
[INFO   ] Kivy v1.8.0
[INFO   ] [Logger      ] Record log in /home/Administrator/.kivy/logs/kivy_14-10-28_1.txt
 Traceback (most recent call last):
   File "hello1.py", line 5, in <module>
     from kivy.app import App
   File "/home/rbarakx/python/kivy/kivy/app.py", line 321, in <module>
     from kivy.base import runTouchApp, stopTouchApp
   File "/home/rbarakx/python/kivy/kivy/base.py", line 28, in <module>
     from kivy.clock import Clock
   File "/home/rbarakx/python/kivy/kivy/clock.py", line 177, in <module>
     _kernel32 = ctypes.windll.kernel32
 AttributeError: 'module' object has no attribute 'windll'
$ 


我怀疑我的Kivy cygwin的装置可能不足。

是否有在 cygwin 上安装 Kivy 的说明? (谷歌搜索通常的嫌疑人没有产生任何结果)

2 个答案:

答案 0 :(得分:2)

该错误表明您遇到了this bug,其中cygwin的python是使用os.name = posix编译的。你最终可能不得不自己重新编译......或许你可以使用MinGW,如文档here所示,或者只使用native Windows version

答案 1 :(得分:2)

是什么解决了这种情况?

  1. 在Cygwin的Python 2.7中安装Kivy,安装Cythonpygame pip之前
  2. 使用startxwin
  3. 启动Cygwin的X11
  4. 使用export DISPLAY=:0.0
  5. 定义$ DISPLAY