在Mac上安装Python/PyGame

4
我一直在尝试安装PyGame,但效果不佳。我从此链接下载了适用于我的系统的PyGame版本pygame-1.9.1release-python.org-32bit-py2.7-macosx10.3.dmg,并使用向导进行了安装。但当我在IDLE中输入import pygame时,出现了以下消息。
$ import pygame

Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    import pygame
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/__init__.py", line 95, in <module>
    from pygame.base import *
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so, 2): no suitable image found.  Did find:
    /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so: no matching architecture in universal wrapper

我做错了什么?还有,PyGame的先决条件是什么?我在一台新电脑上进行所有操作,几乎没有下载任何东西。

我的操作系统版本是OS X 10.8.2。


你正在使用哪个版本的Python? - The-IT
3个回答

2
我知道这个帖子有点旧了,但我想分享一下我的经验...
我正在使用64位的MacBook Pro运行OS Mavericks和Python 2.7。
步骤:
  • If you've installed a few different versions of pygame while trying to get the darn thing to import and work successfully, make sure you delete/uninstall all of these to get a fresh start. I did a simple search in the terminal to see where all of the various pygame folders where located:

    In Terminal: sudo find / -iname "pygame"
    
结果显示了所有pygame目录的列表,这些是您想要删除的文件夹。请注意,我在终端中创建了一个新选项卡来执行此操作,以便可以从前一个选项卡上的搜索引用目录并轻松复制每个目录,而无需进行另一个搜索以记住它们的位置:
   In Terminal: sudo rm -R -i path/pygame

请注意,您可以从上面的代码中删除-i,这样它就不会确认删除某些文件,但是在终端中删除完整目录时要非常小心。
  • 清除您机器上以前安装的所有Pygame,确保您从python.org下载了Python 2.7,而不是IDLE(默认的Mac Python解释器)!这非常重要。我使用PyCharm,它很棒!另外,请选择适用于32位和64位机器的版本-这样您就不会在64位机器上使用pygame 32位安装程序时出现问题。我尝试过相同的安装过程,但使用64位Python 2.7安装,但它没有起作用。以下提供链接:

    下载32/64位Python 2.7

  • 接下来,下载适用于OS X 10.3及以上版本的32位pygame文件,并运行从dmg创建的mpkg文件。以下提供链接。

    下载适用于Python 2.7的pygame 1.910版本

现在你应该已经在你的Python 2.7包库中安装了一个可用的Pygame。享受它吧。

0
你是从python.org安装的Python吗?还是使用了OS X自带的?
如果你使用了苹果提供的那个,你必须先从python.org下载一个包,然后使用该包进行安装。或者你可以尝试Lion-pygame包(链接在下载页面的Macintosh部分底部),但它可能不兼容。

我下载了python.org上的那个,但我不确定哪一个是默认设置,也不知道如何更改它。我还尝试了Lion软件包,但我先下载了另一个,不知道如何更改调用哪一个。 - David Meyers

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接