2016-07-15 9 views
1

を作成するときに、私はWindows上でKivyから作られたシンプルなアプリ作るしようとしています。このエラーを取得する:私はいつもKivyアプリ

import kivy 
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() 

(EDIT)しかし、私はこの非常に長いエラーが出るたびに、これはそれのすべてである:

[INFO    ] [Logger  ] Record log in C:\Users\danie\.kivy\logs\kivy_16-07-15_5.txt 
[INFO    ] [Kivy  ] v1.9.1 
[INFO    ] [Python  ] v3.4.4 (v3.4.4:737efcadf5a6, Dec 20 2015, 20:20:57) [MSC v.1600 64 bit (AMD64)] 
[INFO    ] [Factory  ] 179 symbols loaded 
[INFO    ] [Image  ] Providers: img_tex, img_dds, img_gif, img_sdl2, img_pil (img_ffpyplayer ignored) 
[INFO    ] [Text  ] Provider: sdl2 
[INFO    ] [OSC   ] using <thread> for socket 
[INFO    ] [Window  ] Provider: sdl2 
[INFO    ] [GL   ] GLEW initialization succeeded 
[INFO    ] [GL   ] OpenGL version <b'4.4.0 - Build 10.18.15.4271'> 
[INFO    ] [GL   ] OpenGL vendor <b'Intel'> 
[INFO    ] [GL   ] OpenGL renderer <b'Intel(R) HD Graphics 530'> 
[INFO    ] [GL   ] OpenGL parsed version: 4, 4 
[INFO    ] [GL   ] Shading version <b'4.40 - Build 10.18.15.4271'> 
[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"> 
[WARNING   ] [Image  ] Unable to load image <C:\Python34\lib\site-packages\kivy\data\glsl\default.png> 
[CRITICAL   ] [Window  ] Unable to find any valuable Window provider at all! 
sdl2 - Exception: SDL2: Unable to load image 
    File "C:\Python34\lib\site-packages\kivy\core\__init__.py", line 67, in core_select_lib 
    cls = cls() 
    File "C:\Python34\lib\site-packages\kivy\core\window\window_sdl2.py", line 138, in __init__ 
    super(WindowSDL, self).__init__() 
    File "C:\Python34\lib\site-packages\kivy\core\window\__init__.py", line 722, in __init__ 
    self.create_window() 
    File "C:\Python34\lib\site-packages\kivy\core\window\window_sdl2.py", line 255, in create_window 
    super(WindowSDL, self).create_window() 
    File "C:\Python34\lib\site-packages\kivy\core\window\__init__.py", line 897, in create_window 
    self.render_context = RenderContext() 
    File "kivy\graphics\instructions.pyx", line 756, in kivy.graphics.instructions.RenderContext.__init__ (kivy\graphics\instructions.c:10729) 
    File "C:\Python34\lib\site-packages\kivy\core\image\__init__.py", line 512, in __init__ 
    self.filename = arg 
    File "C:\Python34\lib\site-packages\kivy\core\image\__init__.py", line 700, in _set_filename 
    mipmap=self._mipmap, nocache=self._nocache) 
    File "C:\Python34\lib\site-packages\kivy\core\image\__init__.py", line 430, in load 
    im = loader(filename, **kwargs) 
    File "C:\Python34\lib\site-packages\kivy\core\image\__init__.py", line 198, in __init__ 
    self._data = self.load(filename) 
    File "C:\Python34\lib\site-packages\kivy\core\image\img_sdl2.py", line 42, in load 
    raise Exception('SDL2: Unable to load image') 

[CRITICAL   ] [App   ] Unable to get a Window, abort. 
Exception ignored in: 'kivy.properties.dpi2px' 
Traceback (most recent call last): 
    File "C:\Python34\lib\site-packages\kivy\utils.py", line 513, in __get__ 
    retval = self.func(inst) 
    File "C:\Python34\lib\site-packages\kivy\metrics.py", line 175, in dpi 
    EventLoop.ensure_window() 
    File "C:\Python34\lib\site-packages\kivy\base.py", line 126, in ensure_window 
    sys.exit(1) 
SystemExit: 1 
[CRITICAL   ] [App   ] Unable to get a Window, abort. 

私はこのエラーが表示されている理由を、あなたはこのうち私を助けることができる理解できないのですか?

+0

完全なログを投稿してください。 – inclement

+0

申し訳ありませんが、今は完全なものです。 –

+0

SDLをインストールしていますか? – Dave

答えて

1

インストール手順ではgstreamerと表示されていますが、これはオプションですが、インストールするにはkivyをインストールする必要がありました(ウィンドウズ)。インストールページ上のように:1.9.1の前に固定されたようですので、
python -m pip install kivy.deps.gstreamer --extra-index-url https://kivy.org/downloads/packages/simple/

+0

あなたの人生保護者 –

+1

gstreamerをインストールしようとするとエラーが発生した場合は、次のリンクから直接ダウンロードできます。https://kivy.org/downloads/appveyor/deps/gstreamer/ python -m pip install kivy.deps.gstreamer-0.1.5-cp34-none-win_amd64.whl(または、ダウンロードしたgstreamerのバージョン)。 – Ideae

1

gstreamerの提案は私の場合には誤解を招きました(それは再び再びそれを固定設置する、上記のエラーを再現アンインストール)私が使用しているバージョン。 kivyは、これらのコマンドは、例えば動作しなくなり、車輪の方法を使用してインストールされていない場合は

:エラーがドキュメントhereの少しあいまいなパスに記載されていますkivy.deps.sdl2はインポートに失敗します。代わりに、これらのdllの場所を見つけて、手動でTreeクラスに渡す必要があります。

私は "ホイールメソッド"(別名私はvirtualenvを使用して、そこにインストールしています)を使用していないという事実によって、Windows上のバイナリ/ dllの問題です。私はこのように修正しました:

  1. Windows上のpython共有フォルダを探します。例えば。 virtualenvの中で、あなたはX上でそれを見つける:\ virtualentpath \共有
  2. コピーしますstep 2 hereを行って、ステップ3の前に、distのフォルダにシェアフォルダを作成し、を貼り付けた後はGLEWとSDL2ディレクトリ
  3. GLEWSDLディレクトリは、それ
  4. myappname.specファイル

    coll = COLLECT(exe, 
    Tree('dist\\share\\glew\\bin\\'), 
    Tree('dist\\share\\sdl2\\bin\\'), 
    Tree('c:\\Users\\myuser\\PycharmProjects\\myappname\\'), 
         a.binaries, 
         a.zipfiles, 
         a.datas, 
         strip=False, 
         upx=True, 
         name='myappname') 
    
にライブラリのパスを追加します。

gstreamerが必要な場合は、が必要でない場合は、を追加する必要があります。唯一のGStreamerライブラリは基本的な2以上の何かのように44倍大きいので、それは重要です:

  • GLEW + SDL = 7.31メガバイト
  • のgstreamer = 323メガバイト

それはだ場合、私は知りませんいくつかの時間の後に私は赤いニシンを見つけた後、これは私の場合にはメソッドだけです。

Windowsの場合、Kivyのドキュメントの最後の段落を書き直すと役立ちます。

関連する問題