1

我的操作系统是 OSX 10.8(山狮),我使用的是 python 2.7.3。我以为我已经成功安装了pygame。不幸的是,我错了。我可以导入 pygame,但是导入 pygame.font 时出现问题

>>> import pygame
>>> import pygame.font
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: dlopen(/usr/local/lib/python2.7/site-packages/pygame/font.so, 2): Symbol not found: _TTF_CloseFont
Referenced from: /usr/local/lib/python2.7/site-packages/pygame/font.so
Expected in: flat namespace
in /usr/local/lib/python2.7/site-packages/pygame/font.so

我猜这是框架 SDL_ttf 的问题,但我相信我已经成功安装了这个框架。我按照这个说明安装了pygame,这是运行的结果sudo python config.py

Hunting dependencies...
Framework SDL found
Framework SDL_ttf found
Framework SDL_image found
Framework SDL_mixer found
Framework smpeg not found
PNG     : found
JPEG    : found
SCRAP   : not found
PORTMIDI: not found
Framework CoreMidi found

我应该怎么做才能导入 pygame.font?

4

2 回答 2

1

我无法弄清楚这个问题的解决方案,但我有另一种方法可以避免它。

而不是用我在问题中提到的方式安装pygame,我决定使用下面的方式来安装它。幸运的是,现在一切正常。我也强烈推荐想要使用以下方法安装 pygame 的人。

1.从python.org安装python:http: //www.python.org/ftp/python/2.7.3/python-2.7.3-macosx10.6.dmg

pygame需要这个版本的python。您必须安装此版本,但其他任何版本! 此 .dmg 文件将在以下路径中安装 python:/Library/Frameworks/Python.framework/Versions/2.7/

如果没有问题,.dmg 文件会自动将此路径添加到您的 .bash_profile 中。如果它不适合您,只需编辑您的 .bash_profile 并向其中添加以下行:

PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH

打开一个新的 bash,并使用它which python来检查您正在使用的 python 版本。如果您使用的版本是上述版本,则可以执行第 2 步。

2.从pygame.org下载pygame1.9.1:http://pygame.org/ftp/pygame-1.9.1release-python.org-32bit-py2.7-macosx10.3.dmg安装。

3. pygame 只支持 32 位,这意味着你必须用 32 位 python 运行你的 pygame。幸运的是,使用 32 位 python 很容易:python2.7-32 your_pygame.py

于 2012-12-31T07:45:13.787 回答
0

您可以导入 pygame 但不能导入 pygame.font,这很奇怪。但是,您不必单独导入 pygame.font。导入 pygame 时应该会自动导入。只是不要导入 pygame.font,你应该没问题。

于 2012-12-02T21:47:09.253 回答