安装64位Pygame与64位Kivy一起使用



我正在尝试在运行10.12.1的MacBook Pro上使用Kivy。我安装的Kivy版本是64位,但是PyGame版本为32位,因此当我运行基本的Kivy程序时,我会返回此错误:

    pygame - ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so, 2): Symbol not found: _SDL_EnableUNICODE
  Referenced from: /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so
  Expected in: flat namespace
 in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kivy/core/__init__.py", line 59, in core_select_lib
    fromlist=[modulename], level=0)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kivy/core/text/text_pygame.py", line 12, in <module>
    import pygame
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/__init__.py", line 133, in <module>
    from pygame.base import *

这是什么解决方法?我有一个想使用的64位模块,所以不想完全切换到32位Python。

谢谢。

kivy的pygame支持长期以来弃用,尽管它可能仍然有效。相反,您应该使用SDL2-如果您遵循Kivy安装说明,则应自动完成此操作。

我安装的Kivy版本是64位,但是Pygame版本是 32位

您不能任意选择模块的位。您应该找到并安装与使用的cpython解释器相同的位置。

看一下本文和提供的解决方案。

最新更新