2014-07-21 2 views
2

В настоящее время я изучаю Kivy 1.8.0 (на Windows 7, Python 3.3.3), пробовав упражнение Pong Game. После написания всего кода я хотел протестировать компиляцию кода в .exe. Но поскольку PyInstaller доступен только для Python2.X, а не Python3.X, я искал другие решения. Я просмотрел интернет и, наконец, попытался скомпилировать мой код с помощью Cython и cl (Visual Studio 10.0). Компиляция работает нормально, но когда я запускаю exe-выход, он дает мне это в окне «отладки»:Невозможно получить окно, отменить. Ошибка Kivy при запуске исполняемого файла, скомпилированного из cython и cl

[INFO    ] Kivy v1.8.0 
[INFO    ] [Logger  ] Record log in C:\Users\PLD\.kivy\logs\kivy_1 
4-07-21_1.txt 
[INFO    ] [Factory  ] 157 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 
[INFO    ] [Image  ] Providers: img_tex, img_dds, img_gif (img_py 
game, img_pil ignored) 
[DEBUG    ] [Cache  ] register <kv.texture> with limit=1000, timeo 
ut=60s 
[DEBUG    ] [Cache  ] register <kv.shader> with limit=1000, timeou 
t=3600s 
[DEBUG    ] [App   ] Loading kv <.\pong.kv> 
[DEBUG    ] [Window  ] Ignored <egl_rpi> (import error) 
[DEBUG    ] [Window  ] Ignored <pygame> (import error) 
[WARNING   ] [WinPygame ] SDL wrapper failed to import! 
[DEBUG    ] [Window  ] Ignored <sdl> (import error) 
[DEBUG    ] [Window  ] Ignored <x11> (import error) 
[CRITICAL   ] [Window  ] Unable to find any valuable Window provider 
at all! 
[CRITICAL   ] [App   ] Unable to get a Window, abort. 

и выходы. Я не знаю, что неправильно, зная, что когда я запускаю оригинальный .py-файл, у меня нет никакой ошибки. Вот команды, которые я использовал и его вывод:

C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin>vcvars32.bat 
Setting environment for using Microsoft Visual Studio 2010 x86 tools. 

C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin>cd C:/Kivy-1.8.0-py3. 
3-win32 

C:\Kivy-1.8.0-py3.3-win32>kivy.bat 
botstrapping Kivy @ C:\Kivy-1.8.0-py3.3-win32\ 
Setting Environment Variables: 
################################# 
GST_REGISTRY 
C:\Kivy-1.8.0-py3.3-win32\gstreamer\registry.bin 
--------------- 
GST_PLUGIN_PATH: 
C:\Kivy-1.8.0-py3.3-win32\gstreamer\lib\gstreamer-1.0 
--------------- 
PATH: 
C:\Kivy-1.8.0-py3.3-win32\;C:\Kivy-1.8.0-py3.3-win32\Python33;C:\Kivy-1.8.0-py3. 
3-win32\tools;C:\Kivy-1.8.0-py3.3-win32\Python33\Scripts;C:\Kivy-1.8.0-py3.3-win 
32\gstreamer\bin;C:\Kivy-1.8.0-py3.3-win32\MinGW\bin;C:\Program Files (x86)\Micr 
osoft F#\v4.0\;C:\Program Files (x86)\Microsoft Visual Studio 10.0\VSTSDB\Deploy 
;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\;C:\Program Fil 
es (x86)\Microsoft Visual Studio 10.0\VC\BIN;C:\Program Files (x86)\Microsoft Vi 
sual Studio 10.0\Common7\Tools;C:\Windows\Microsoft.NET\Framework\v4.0.30319;C:\ 
Windows\Microsoft.NET\Framework\v3.5;C:\Program Files (x86)\Microsoft Visual Stu 
dio 10.0\VC\VCPackages;C:\Program Files (x86)\HTML Help Workshop;C:\Program File 
s (x86)\Microsoft Visual Studio 10.0\Team Tools\Performance Tools;C:\Program Fil 
es (x86)\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools;C:\Program Files (x86) 
\Microsoft SDKs\Windows\v7.0A\bin;C:\Kivy-1.8.0-py3.3-win32;C:\Kivy-1.8.0-py3.3- 
win32\Python33;C:\Kivy-1.8.0-py3.3-win32\gstreamer\bin;C:\Kivy-1.8.0-py3.3-win32 
\MinGW\bin;C:\Kivy-1.8.0-py3.3-win32;C:\Kivy-1.8.0-py3.3-win32\Python33;C:\Kivy- 
1.8.0-py3.3-win32\gstreamer\bin;C:\Kivy-1.8.0-py3.3-win32\kivy;C:\Kivy-1.8.0-py3 
.3-win32;C:\Kivy-1.8.0-py3.3-win32\Python33;C:\Kivy-1.8.0-py3.3-win32\gstreamer\ 
bin;C:\Kivy-1.8.0-py3.3-win32\MinGW\bin;C:\Kivy-1.8.0-py3.3-win32;C:\Kivy-1.8.0- 
py3.3-win32\Python33;C:\Kivy-1.8.0-py3.3-win32\gstreamer\bin;C:\Kivy-1.8.0-py3.3 
-win32\kivy;C:\Kivy-1.8.0-py3.3-win32;C:\Kivy-1.8.0-py3.3-win32\Python33;C:\Kivy 
-1.8.0-py3.3-win32\gstreamer\bin;C:\Kivy-1.8.0-py3.3-win32\MinGW\bin;C:\Kivy-1.8 
.0-py3.3-win32;C:\Kivy-1.8.0-py3.3-win32\Python33;C:\Kivy-1.8.0-py3.3-win32\gstr 
eamer\bin;C:\Kivy-1.8.0-py3.3-win32\kivy;C:\Windows\System32;C:\Program Files\Mi 
crosoft SQL Server\110\Tools\Binn\;C:\Program Files\Microsoft SQL Server\110\Too 
ls\Binn\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files\ 
Satsuki Decoder Pack\Filtres 
---------------------------------- 
PYTHONPATH: 
C:\Kivy-1.8.0-py3.3-win32\kivy; 
---------------------------------- 
################################## 
done bootstraping kivy...have fun!\n 

----------------------------------------------------------------------- 
- Running a shell, you can browse kivyexamples and launch apps with: - 
- python app.py - 
----------------------------------------------------------------------- 

Microsoft Windows [version 6.1.7601] 
Copyright (c) 2009 Microsoft Corporation. Tous droits réservés. 

C:\Kivy-1.8.0-py3.3-win32>cd ../pcod/Python/Python33-Kivy/PingPongGame 

C:\pcod\Python\Python33-Kivy\PingPongGame>cython main.py -o main.c --embed 

C:\pcod\Python\Python33-Kivy\PingPongGame>python.exe -m cython main.py -o main.c 
--embed 

C:\pcod\Python\Python33-Kivy\PingPongGame>cl.exe /nologo /Ox /MD /W3 /GS- /DNDEB 
UG -Ic:\Kivy-1.8.0-py3.3-win32\Python33\include -Ic:\Kivy-1.8.0-py3.3-win32\PC m 
ain.c /link /OUT:"main.exe" /SUBSYSTEM:CONSOLE /MACHINE:X86 /LIBPATH:c:\Kivy-1.8 
.0-py3.3-win32\Python33\libs /LIBPATH:c:\Kivy-1.8.0-py3.3-win32\Python33\PCbuild 

main.c 
    Creating library main.lib and object main.exp 

C:\pcod\Python\Python33-Kivy\PingPongGame>main.exe 
[INFO    ] Kivy v1.8.0 
[INFO    ] [Logger  ] Record log in C:\Users\PLD\.kivy\logs\kivy_1 
4-07-21_2.txt 
[INFO    ] [Factory  ] 157 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 
[INFO    ] [Image  ] Providers: img_tex, img_dds, img_gif (img_py 
game, img_pil ignored) 
[DEBUG    ] [Cache  ] register <kv.texture> with limit=1000, timeo 
ut=60s 
[DEBUG    ] [Cache  ] register <kv.shader> with limit=1000, timeou 
t=3600s 
[DEBUG    ] [App   ] Loading kv <.\pong.kv> 
[DEBUG    ] [Window  ] Ignored <egl_rpi> (import error) 
[DEBUG    ] [Window  ] Ignored <pygame> (import error) 
[WARNING   ] [WinPygame ] SDL wrapper failed to import! 
[DEBUG    ] [Window  ] Ignored <sdl> (import error) 
[DEBUG    ] [Window  ] Ignored <x11> (import error) 
[CRITICAL   ] [Window  ] Unable to find any valuable Window provider 
at all! 
[CRITICAL   ] [App   ] Unable to get a Window, abort. 

я считаю, что этот вопрос исходит из cl.exe команды, но я не знаю точно, где :(Пожалуйста, помогите

Спасибо.!. с уважением, PLD.

+1

Если вы хотите создать exe, вам нужно использовать Python 2.7 или внести вклад, сделав работу pyinstaller для Py3 или сделайте cx_Freeze работать с Kivy. –

ответ

1

Ну, после прочтения некоторых статей и материал, я пришел к выводу, что Kivy еще не готов к Python3. Использование python2 версия Kivy и PyInstal ler2 кажется самым простым решением.

1

Эта ошибка означает Pygame не был включен в компиляции.

+0

Хм, проверит, как его включить. – PLD

Смежные вопросы