【问题标题】:Kivy errors on a new Windows 10 (same code worked fine on an old Mac)新 Windows 10 上的 Kivy 错误(相同的代码在旧 Mac 上运行良好)
【发布时间】:2017-12-27 05:01:49
【问题描述】:

在新的 Windows 10 上使用 kivy 运行 python 文件时出现以下错误:

C:\Users\Me\AppData\Local\Programs\Python\Python36-32\python.exe C:/Users/Me/Desktop/PycharmProjects/music_game_kivy/music_game_kivy.py
[INFO   ] [Logger      ] Record log in C:\Users\Me\.kivy\logs\kivy_17-12-26_10.txt
[INFO   ] [Kivy        ] v1.10.0
[INFO   ] [Python      ] v3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900 32 bit (Intel)]
[INFO   ] [Factory     ] 194 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_gif (img_sdl2, img_pil, img_ffpyplayer ignored)
[CRITICAL] [Text        ] Unable to find any valuable Text provider.
sdl2 - ImportError: DLL load failed: The specified module could not be found.
  File "C:\Users\Me\AppData\Local\Programs\Python\Python36-32\lib\site-packages\kivy\core\__init__.py", line 59, in core_select_lib
    fromlist=[modulename], level=0)
  File "C:\Users\Me\AppData\Local\Programs\Python\Python36-32\lib\site-packages\kivy\core\text\text_sdl2.py", line 12, in <module>
    from kivy.core.text._text_sdl2 import (_SurfaceContainer, _get_extents,

pil - ModuleNotFoundError: No module named 'PIL'
  File "C:\Users\Me\AppData\Local\Programs\Python\Python36-32\lib\site-packages\kivy\core\__init__.py", line 59, in core_select_lib
    fromlist=[modulename], level=0)
  File "C:\Users\Me\AppData\Local\Programs\Python\Python36-32\lib\site-packages\kivy\core\text\text_pil.py", line 7, in <module>
    from PIL import Image, ImageFont, ImageDraw

[CRITICAL] [App         ] Unable to get a Text provider, abort.

Process finished with exit code 1

完全相同的 python 文件在我的旧 Mac 上运行良好。我没有发布整个代码,因为它几乎有 1500 行长......如果有帮助,这里是我从代码顶部导入的内容:

from kivy.app import App
from kivy.clock import Clock
from kivy.graphics import Color, Rectangle
from kivy.uix.button import Button
from kivy.uix.image import Image
from kivy.uix.label import Label
from kivy.uix.widget import Widget
from random import randrange

非常感谢任何帮助!

这是安装 Pillow 后的新错误消息:

C:\Users\Me\AppData\Local\Programs\Python\Python36-32\python.exe C:/Users/Me/Desktop/PycharmProjects/music_game_kivy/music_game_kivy.py
[INFO   ] [Logger      ] Record log in C:\Users\Me\.kivy\logs\kivy_17-12-26_11.txt
[INFO   ] [Kivy        ] v1.10.0
[INFO   ] [Python      ] v3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900 32 bit (Intel)]
[INFO   ] [Factory     ] 194 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_pil, img_gif (img_sdl2, img_ffpyplayer ignored)
[INFO   ] [Audio       ] Providers:  (audio_ffpyplayer, audio_sdl2 ignored)
[CRITICAL] [Window      ] Unable to find any valuable Window provider.
sdl2 - ImportError: DLL load failed: The specified module could not be found.
  File "C:\Users\Me\AppData\Local\Programs\Python\Python36-32\lib\site-packages\kivy\core\__init__.py", line 59, in core_select_lib
    fromlist=[modulename], level=0)
  File "C:\Users\Me\AppData\Local\Programs\Python\Python36-32\lib\site-packages\kivy\core\window\window_sdl2.py", line 26, in <module>
    from kivy.core.window._window_sdl2 import _WindowSDL2Storage

[INFO   ] [Text        ] Provider: pil(['text_sdl2'] ignored)
[CRITICAL] [App         ] Unable to get a Window, abort.

Process finished with exit code 1

【问题讨论】:

    标签: python windows macos python-3.x kivy


    【解决方案1】:

    对于 Windows,请尝试从命令提示符执行以下命令:

    pip install Pillow 要么 python -m pip install Pillow

    Pillow 是 Python Imaging Library PIL 的一个分支,不再维护。但是,为了保持向后兼容性,使用旧的模块名称。

    对于 sdl2 尝试以下(windows):

    python -m pip install kivy.deps.sdl2
    python -m pip install kivy.deps.glew
    

    或尝试:

    python -m pip install docutils pygments pypiwin32 kivy.deps.sdl2 kivy.deps.glew
    

    【讨论】:

    • 非常感谢您的回答!安装枕头解决了部分问题。错误的 sdl2 部分仍然存在。
    • 我建议保留跟踪 :) 并更新 sdl2 问题的答案
    • sdl2 的第一个建议解决了这个问题。现在我收到 3 个 kivy 警告,但应用程序运行良好!非常感谢:)
    • @Auggie 太棒了!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-07
    • 1970-01-01
    • 1970-01-01
    • 2017-06-16
    相关资源
    最近更新 更多