Kivy — ImportError: ошибка загрузки DLL при импорте _window_sdl2: не удалось найти указанный модуль

#python #python-3.x #anaconda #kivy

Вопрос:

Получаю эту ошибку при попытке запустить проект Kivy с Python v3.9.7:

 [INFO   ] deps: Successfully imported "kivy_deps.gstreamer" 0.3.1
[INFO   ] deps: Successfully imported "kivy_deps.angle" 0.3.0
[INFO   ] deps: Successfully imported "kivy_deps.glew" 0.3.0
[INFO   ] deps: Successfully imported "kivy_deps.sdl2" 0.3.1
[INFO   ] Kivy: v2.0.0
[INFO   ] Kivy: Installed at "C:UserswilliAppDataLocalPackagesPythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0LocalCachelocal-packagesPython39site-packageskivy__init__.py"
[INFO   ] Python: v3.9.7 (tags/v3.9.7:1016ef3, Aug 30 2021, 20:19:38) [MSC v.1929 64 bit (AMD64)]
[INFO   ] Python: Interpreter at "C:UserswilliAppDataLocalMicrosoftWindowsAppsPythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0python.exe"
[INFO   ] Factory: 186 symbols loaded
[INFO   ] Image: Providers: img_tex, img_dds, img_pil (img_sdl2, img_ffpyplayer ignored)
[INFO   ] Text: Provider: pil(['text_sdl2'] ignored)
[CRITICAL] Window: Unable to find any valuable Window provider. Please enable debug logging (e.g. add -d if running from the command line, or change the log level in the config) and re-run your app to identify potential causes
sdl2 - ImportError: DLL load failed while importing _window_sdl2: The specified module could not be found.
  File "C:UserswilliAppDataLocalPackagesPythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0LocalCachelocal-packagesPython39site-packageskivycore__init__.py", line 58, in core_select_lib
    mod = __import__(name='{2}.{0}.{1}'.format(
  File "C:UserswilliAppDataLocalPackagesPythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0LocalCachelocal-packagesPython39site-packageskivycorewindowwindow_sdl2.py", line 27, in <module>
    from kivy.core.window._window_sdl2 import _WindowSDL2Storage

[CRITICAL] App: Unable to get a Window, abort.
 

Вот вывод при работе в Anaconda с Python v3.7.4:

 [INFO   ] Logger: Record log in C:Userswilli.kivylogskivy_21-09-27_1.txt
[INFO   ] deps: Successfully imported "kivy_deps.angle" 0.3.0
[INFO   ] deps: Successfully imported "kivy_deps.glew" 0.3.0
[INFO   ] deps: Successfully imported "kivy_deps.sdl2" 0.3.1
[INFO   ] Kivy: v2.0.0
[INFO   ] Kivy: Installed at "C:UserswilliAppDataLocalContinuumanaconda3libsite-packageskivy__init__.py"
[INFO   ] Python: v3.7.4 (default, Aug  9 2019, 18:34:13) [MSC v.1915 64 bit (AMD64)]
[INFO   ] Python: Interpreter at "C:UserswilliAppDataLocalContinuumanaconda3pythonw.exe"
[INFO   ] Image: Providers: img_tex, img_dds, img_sdl2, img_pil (img_ffpyplayer ignored)
 

В среде Anaconda он работал просто отлично, поэтому я пришел к выводу, что, возможно, это как-то связано с версией Python? Я не смог найти в Интернете ничего, что подробно описывало бы, у кого еще была эта проблема. У меня не было этой проблемы в прошлом с Python v3.9.1

Так почему бы вам просто не использовать среду Anaconda, раз она там отлично работает?

Причина в том, что я использую Spyder, и после выполнения программы Kivy с использованием ядра и закрытия окна она всегда замораживает ядро, и мне приходится принудительно завершать работу и запускать другое. Так что это раздражает и неудобно.

Вещи, которые я пробовал

  1. удалить / переустановить Kivy
  2. удалите / переустановите kivy.deps.sdl2

Заранее спасибо за любую помощь или совет!

Комментарии:

1. Вы пробовали переустановить Python ? Если да, и это все еще не так, может быть, одна из альтернатив-установить последнюю версию разработки Kivy из репозитория kivy ? У меня есть друг, который получил ту же ошибку, и когда он попробовал оба варианта, это сработало для него.

2. Так что я не уверен, потому ли это, что я новичок в stackoverflow или что-то еще, но я, похоже, не могу поддержать или проверить ваш ответ, но это решение, которое сработало для меня, так что спасибо!

3. Это потому, что это комментарий, а не ответ, потому что мне не хочется отправлять его в качестве ответа, если он может идеально вписаться в комментарий, ха-ха. Хотя я рад, что это помогает!