由于 Windows 桌面上的 OpenGL 要求导致的 kivy 致命错误 [英] kivy fatal error due to OpenGL requirement on windows desktop
问题描述
我使用 Python 2.7 和 kivy 编写了一个 Windows 桌面应用程序,该应用程序在 pyCharm IDE 和 python 命令行中运行良好.使用 PyInstaller 构建分发包后,从 ..distapplicdir 运行应用程序,我收到 Kivy 致命错误:
I have written a windows desktop application using Python 2.7 and kivy that runs perfectly well from the pyCharm IDE and from the python commandline. After building a distribution package using PyInstaller, running the application from the ..distapplicdir I get a Kivy Fatal Error:
GL:未找到最低要求的 OpenGL 版本 (2.0)!
怎么会?它在同一台 PC 上从 2 个不同的角度运行,但不是从同一台 PC 上的 dist 包运行.
How come? It runs from 2 different angles on the same PC but not from the dist package on the same PC.
你能解释一下为什么在前两种情况下我没有得到致命错误吗?
Can you explain to me why in the first two situations I do not get the fatal Error?
>>>>>>>>>>>>>> EDIT 1 <<<<<<<<<<<<<<<
[INFO ] [Logger ] Record log in ~.kivylogskivy_16-04-01_99.txt
[INFO ] [Kivy ] v1.9.1
[INFO ] [Python ] v2.7.11 (v2.7.11:6d1b6a68f775, Dec 5 2015,20:32:19) [MSC v.1500 32 bit (Intel)]
[INFO ] [Factory ] 179 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_gif, img_sdl2, img_pil (img_ffpyplayer ignored)
[INFO ] [OSC ] using <thread> for socket
[INFO ] [Window ] Provider: sdl2
[WARNING ] The 'fake' fullscreen option has been deprecated, use Window.borderless or the borderless Config option instead.
[INFO ] [GL ] GLEW initialization succeeded
[INFO ] [GL ] OpenGL version <4.0.0 - Build 10.18.10.4176>
[INFO ] [GL ] OpenGL vendor <Intel>
[INFO ] [GL ] OpenGL renderer <Intel(R) HD Graphics 4000>
[INFO ] [GL ] OpenGL parsed version: 4, 0
[INFO ] [GL ] Shading version <4.00 - Build 10.18.10.4176>
[INFO ] [GL ] Texture max size <16384>
[INFO ] [GL ] Texture max units <16>
[INFO ] [Window ] auto add sdl2 input provider
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [Text ] Provider: sdl2
PyInstaller Bootloader 3.x
LOADER: executable is C:ProjectsUP52PACKAGEdistup52creatorup52creator.exe
LOADER: homepath is C:ProjectsUP52PACKAGEdistup52creator
LOADER: _MEIPASS2 is NULL
LOADER: archivename is C:ProjectsUP52PACKAGEdistup52creatorup52creator.exe
LOADER: No need to extract files to run; setting extractionpath to homepath
LOADER: SetDllDirectory(C:ProjectsUP52PACKAGEdistup52creator)
LOADER: Already in the child - running user's code.
LOADER: Python library: C:ProjectsUP52PACKAGEdistup52creatorpython27.dll
LOADER: Loaded functions from Python library.
LOADER: Manipulating environment (sys.path, sys.prefix)
LOADER: sys.prefix is C:ProjectsUP52PACKAGEdistUP52CR~1
LOADER: Setting runtime options
LOADER: Initializing python
LOADER: Overriding Python's sys.path
LOADER: Post-init sys.path is C:ProjectsUP52PACKAGEdistup52creator
LOADER: Setting sys.argv
LOADER: setting sys._MEIPASS
LOADER: importing modules from CArchive
LOADER: extracted struct
LOADER: callfunction returned...
LOADER: extracted pyimod01_os_path
LOADER: callfunction returned...
LOADER: extracted pyimod02_archive
LOADER: callfunction returned...
LOADER: extracted pyimod03_importers
LOADER: callfunction returned...
LOADER: Installing PYZ archive with Python modules.
LOADER: PYZ archive: out00-PYZ.pyz
LOADER: Running pyiboot01_bootstrap.py
no mem to add parser accelerators
Traceback (most recent call last):
File "<string>", line 21, in <module>
File "C:ProjectsUP52qmonos.py", line 56, in showHome
recMgr = Manager()
File "C:Python27libmultiprocessing\__init__.py", line 99, in Manager
m.start()
File "C:Python27libmultiprocessingmanagers.py", line 528, in start
self._address = reader.recv()
EOFError
qmonosmain returned -1
LOADER: OK.
LOADER: Cleaning up Python interpreter.
Traceback (most recent call last):
File "<string>", line 21, in <module>
Traceback (most recent call last):
File "<string>", line 21, in <module>
File "C:ProjectsUP52qmonos.py", line 56, in showHome
recMgr = Manager()
File "C:ProjectsUP52qmonos.py", line 56, in showHome
File "C:Python27libmultiprocessing\__init__.py", line 99, in Manager
m.start()
recMgr = Manager()
File "C:Python27libmultiprocessingmanagers.py", line 528, in start
File "C:Python27libmultiprocessing\__init__.py", line 99, in Manager
m.start()
self._address = reader.recv()
File "C:Python27libmultiprocessingmanagers.py", line 528, in start
EOFError
qmonosmain returned -1
LOADER: OK.
LOADER: Cleaning up Python interpreter.
self._address = reader.recv()
EOFError
qmonosmain returned -1
LOADER: OK.
LOADER: Cleaning up Python interpreter.
推荐答案
更新显卡驱动解决了这个问题.但仍然是一个奇怪的情况,在 PyInstaller 包创建后,应用程序会触发 OpenGL 版本问题,而 PyCharm IDE 和 Python 命令行却没有......
Updating the graphics driver solved the problem. But still a strange situation that after PyInstaller package creation the application triggers on OpenGL version issues and the PyCharm IDE and Python commandline do not.......
这篇关于由于 Windows 桌面上的 OpenGL 要求导致的 kivy 致命错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!