2017-01-24 1 views
6

brewがインストールしたpython 2.7.13でOSX 10.12.2でKivyにpygameを使わずにSDL2を使用させようとしました。私は依存関係をインストールするために以下を実行しました。 「醸造医」がきれいに戻ってくるので、彼らはうまくインストールされているようです。OSX 10.12.2でpygameではなくSDL2を使用するには、Kivy 1.9.1または1.9.2を入手するにはどうすればよいですか?

brew install sdl2 sdl2_image sdl2_ttf sdl2_mixer gstreamer 
pip install -I Cython==0.23 

は、それから私は、SDLを使用しようとする試みで、ソースからのコンパイル、1.9.2-DEV0とKivyの1.9.1バージョンの両方を試してみました。私は、repoの最新のコードではなくpipをkivyにインストールしてみましたが、これらの試みのどれもがKivyにSDL2を認識させることはありません。

git clone http://github.com/kivy/kivy 
cd kivy 
USE_SDL2=1 make force 
USE_OSX_FRAMEWORKS=0 sudo pip install -e kivy 

bash-3.2$ KIVY_WINDOW=sdl2 KIVY_IMAGE=sdl2 KIVY_CLIPBOARD=sdl2 KIVY_TEXT=sdl2 python main.py 
[INFO ] [Logger  ] Record log in /Users/dancaron/.kivy/logs/kivy_17-01-23_107.txt 
[INFO ] [Kivy  ] v1.9.2-dev0 
[INFO ] [Python  ] v2.7.13 (default, Jan 23 2017, 19:04:34) 
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.42.1)] 
[INFO ] [Factory  ] 193 symbols loaded 
[INFO ] [Image  ] Providers: (img_imageio, img_tex, img_dds, img_pygame, img_ffpyplayer, img_pil, img_gif ignored) 
[CRITICAL] [App   ] Unable to get any Image provider, abort. 

どのようにしてKivyにSDL2を使用させることができますか?

答えて

3

OSX 10.12.2でKivy 1.9.2を使用してSDL2を動作させるには、次の手順を実行できました。これは、python 2.7をインストールしたbrewと、bluをインストールしたSDL2を前提としています。 /usr/local/lib/python2.7/site-packagesディレクトリに

1)ダウンロードKivyソース()

git clone https://github.com/kivy/kivy 
cd kivy 

2)は、醸造SDL2のLIBSを検索する場所をKivyをしませ伝えるために、環境変数を設定します。 OSXフレームワークのパスを使用し、実際にSDL2を使用し、Kivyを構築します。

KIVY_SDL2_PATH=/usr/local/lib USE_OSX_FRAMEWORKS=0 USE_SDL2=1 make force 

ここで、メインスクリプトを実行すると、ウィンドウプロバイダがSDL2である必要があります。

bash-3.2$ python main.py 
[WARNING] [Config  ] Older configuration version detected (14 instead of 17) 
[WARNING] [Config  ] Upgrading configuration in progress. 
[INFO ] [Kivy  ] v1.9.2-dev0 
[INFO ] [Python  ] v2.7.13 (default, Jan 23 2017, 19:04:34) 
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.42.1)] 
[INFO ] [Factory  ] 193 symbols loaded 
[INFO ] [Image  ] Providers: img_tex, img_imageio, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored) 
[INFO ] [OSC   ] using <multiprocessing> for socket 
[INFO ] [Window  ] Provider: sdl2 

pygameでSDL2を使用すると、網膜のサポートが提供され、ウィンドウのサイズ変更時に黒い画面のような問題が修正されます。

関連する問題