我的操作系统是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
我猜这是Framework SDL_ttf的一个问题,但我相信我已经成功安装了这个框架。我跟着this instruction安装了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?
答案 0 :(得分: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
答案 1 :(得分:0)
你可以导入pygame而不是pygame.font,这很奇怪。但是,您不必单独导入pygame.font。导入pygame时应该自动导入它。只是不要导入pygame.font,你应该没问题。