Pygame:字体模块不可用



在OS X上运行Python 2.7.2和Pygame 1.9.2pre。

另一个无益的问题:初始化pygame.font模块会产生一个我不敢的错误......好吧,尝试解决自己。我猜这是一个相当通用的与pygame相关的问题......但我无法找到任何解决方案。

import pygame
pygame.init()
pygame.font.init()

给:

Desktop/font.py:4: RuntimeWarning: use font: dlopen(/Library/Python/2.7/site-packages/pygame/font.so, 2): Library not loaded: /usr/X11/lib/libfreetype.6.dylib
  Referenced from: /Library/Frameworks/SDL_ttf.framework/Versions/A/SDL_ttf
  Reason: image not found
(ImportError: dlopen(/Library/Python/2.7/site-packages/pygame/font.so, 2): Library not loaded: /usr/X11/lib/libfreetype.6.dylib
  Referenced from: /Library/Frameworks/SDL_ttf.framework/Versions/A/SDL_ttf
  Reason: image not found)
  pygame.font.init()
Traceback (most recent call last):
  File "Desktop/font.py", line 4, in <module>
    pygame.font.init()
  File "/Library/Python/2.7/site-packages/pygame/__init__.py", line 70, in __getattr__
    raise NotImplementedError(MissingPygameModule)
NotImplementedError: font module not available
(ImportError: dlopen(/Library/Python/2.7/site-packages/pygame/font.so, 2): Library not loaded: /usr/X11/lib/libfreetype.6.dylib
  Referenced from: /Library/Frameworks/SDL_ttf.framework/Versions/A/SDL_ttf
  Reason: image not found)

这里到底出了什么问题?字体模块不可用的可能原因有哪些?常见原因?常见修复?

如果有人能启发我出了什么问题,即使它不能解决问题,我也会不胜感激!非常感谢!

编辑:我正在使用64位版本的Python和32位Pygame。(似乎没有适用于Mac OS的64位Pygame(

(自我回答(

问题:将 32 位 Pygame 与 64 位 Python 一起使用通常不是一个好主意。

解决方案:始终在 64 位架构中使用 Python 和 Pygame。(或 32(。

P.S. 目前似乎没有适用于OS X的64位Pygame,因此您必须使用32位Python。

PSS (安装 32 位 Python 后,您可能需要重新安装 32 位 Pygame 才能使其生效。这就是发生在我身上的事情(

我遇到了同样的问题,制作这个问题的进度如下:

  1. 我从 http://www.pygame.org/下载pygame源文件
  2. 我使用命令安装pygame python setup.py install

然后,我可以正常import pygame和使用基本的pygame函数,但是如果我尝试导入其他相关模块,例如import pygame.font,它会跳出font module not found错误。我尝试通过手动安装一些缺少的模块来解决此问题,如下所示:

$ sudo apt-get install python-dev libsdl-image1.2-dev libsdl-mixer1.2-dev  
libsdl-ttf2.0-dev   libsdl1.2-dev libsmpeg-dev python-numpy subversion 
libportmidi-dev ffmpeg libswscale-dev libavformat-dev libavcodec-dev

但是,这个问题仍然存在。

最后,我意识到这是一个依赖问题,所以我通过命令删除已安装的pygame sudo python setup.py clean并删除python/site-packages中的所有文件。我通过以下命令重新安装pygame

sudo apt-get install python-pygame

一切正常。

最新更新