由于Windows桌面上的OpenGL要求导致kivy致命错误

时间:2016-04-01 10:21:54

标签: windows python-2.7 opengl kivy

我已经使用Python 2.7和kivy编写了一个Windows桌面应用程序,它可以很好地运行pyCharm IDE和python命令行。在使用PyInstaller构建分发包之后,从.. \ dist \ applicdir \运行应用程序我得到了一个Kivy致命错误:

GL:找不到最低要求的OpenGL版本(2.0)!

为什么?它在同一台PC上以2个不同的角度运行,但不在同一台PC上的dist包中运行。

你能解释一下为什么在前两种情况下我没有得到致命错误吗?

>>>>>>>>>>>>>> EDIT 1 <<<<<<<<<<<<<<<

[INFO              ] [Logger      ] Record log in ~\.kivy\logs\kivy_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:\Projects\UP52\PACKAGE\dist\up52creator\up52creator.exe
LOADER: homepath is C:\Projects\UP52\PACKAGE\dist\up52creator
LOADER: _MEIPASS2 is NULL
LOADER: archivename is C:\Projects\UP52\PACKAGE\dist\up52creator\up52creator.exe

LOADER: No need to extract files to run; setting extractionpath to homepath
LOADER: SetDllDirectory(C:\Projects\UP52\PACKAGE\dist\up52creator)
LOADER: Already in the child - running user's code.
LOADER: Python library: C:\Projects\UP52\PACKAGE\dist\up52creator\python27.dll
LOADER: Loaded functions from Python library.
LOADER: Manipulating environment (sys.path, sys.prefix)
LOADER: sys.prefix is C:\Projects\UP52\PACKAGE\dist\UP52CR~1
LOADER: Setting runtime options
LOADER: Initializing python
LOADER: Overriding Python's sys.path
LOADER: Post-init sys.path is C:\Projects\UP52\PACKAGE\dist\up52creator
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:\Projects\UP52\qmonos.py", line 56, in showHome
     recMgr = Manager()
   File "C:\Python27\lib\multiprocessing\__init__.py", line 99, in Manager
     m.start()
   File "C:\Python27\lib\multiprocessing\managers.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:\Projects\UP52\qmonos.py", line 56, in showHome
     recMgr = Manager()
   File "C:\Projects\UP52\qmonos.py", line 56, in showHome
   File "C:\Python27\lib\multiprocessing\__init__.py", line 99, in Manager
     m.start()
     recMgr = Manager()
   File "C:\Python27\lib\multiprocessing\managers.py", line 528, in start
   File "C:\Python27\lib\multiprocessing\__init__.py", line 99, in Manager
      m.start()
    self._address = reader.recv()
   File "C:\Python27\lib\multiprocessing\managers.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.

1 个答案:

答案 0 :(得分:0)

更新图形驱动程序解决了这个问题。但仍然是一个奇怪的情况,在PyInstaller包创建之后,应用程序触发OpenGL版本问题并且PyCharm IDE和Python命令行不会.......