Edit3:附加信息:我能够在Windows上运行Eclipse / pygame组合......而不是在MacOSX上运行。
Edit2:从shell编译也有效。只是Eclipse现在:) 我在Eclipse中尝试过的:
对于解释器,我使用auto-config,它建议/usr/bin/python
作为解释器。然后,对于PYTHONPATH,他建议所有默认的东西,然后我添加/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
除了其余的。我仍然在代码中有未解决的包“语法”错误,但在编译他抱怨的唯一错误时,没有合适的64位架构。
../Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so: no appropriate 64-bit architecture (see "man python" for running in 32-bit mode)
编辑:我现在能够在IDLE中import pygame
并初始化pygame。在Eclipse中,我将pygame路径添加到PYTHONPATH,但Eclipse抱怨架构。
我想将pygame与Eclipse,Pydev和Python 2.7结合使用。
首先我下载了Python 2.7.3并安装了它。 为了能够在IDE中工作,我在Eclipse上安装了Pydev。这一切都有效,我可以在Eclipse中使用Pydev,我测试的程序没有问题。
然后我继续下载pygame并安装了它。 (pygame download)
现在我尝试:
import pygame
pygame.init()
Eclipse告诉我:unresolved import: pygame
当我尝试编译时,我得到以下消息:
Traceback (most recent call last):
File "/Users/name/Documents/workspace/test_unit/main.py", line 6, in <module>
import pygame
ImportError: No module named pygame
当我启动IDLE应用程序并尝试导入pygame时,我收到以下错误:
Traceback (most recent call last):
File "<pyshell#1>", 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
但是,如果我通过IDLE使用open Module...
然后打开pygame,则会找到该模块。
我错过了什么?
答案 0 :(得分:4)
好的,我找到了解决方案如何使其正常工作。关键问题是Eclipse选择了“错误的”解释器。 Eclipse的选择适用于普通的python,但是当尝试编译pygame的东西时,它会变得复杂,我会遇到架构错误。
所以我做了什么:
现在给正确的翻译。转到Eclipse->Settings->PyDev->Interpreter - Python
,然后创建一个New...
解释器。对我有用的那个可以在/Library/Frameworks/Python.framework/Versions/2.7/bin
中找到。只需选择python
别名,然后链接到正确的别名。
现在确保你的pygame在你的PYTHONPATH中。为此,只需在当前菜单的下半部分添加New Folder
并导航到您的pygame路径(默认情况下为/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
)
答案 1 :(得分:0)
Installing Pygame for Mac OS X 10.6.8
给它一个读取,看起来你可能正在尝试混合和匹配32 / 64bit库。这可能需要您安装正确版本的python以匹配您的开发环境或pygame以匹配您的开发环境。
我之前在需要32位库的64位系统上遇到过这个问题。修复是强制python以32位模式运行。
强制它进入32位模式的修复程序包含在该页面上
alias python =&#39; arch -i386 / usr / bin / python [version]&#39;
版本当然是你的版本。
如果你在Windows上,我相信你也可以做类似的事情,虽然我不确定如何在Windows中使用别名命令。
答案 2 :(得分:0)
阅读完三个编辑后,似乎存在架构问题。由于PyGame不能在64位平台上运行,因此在这种情况下需要选择32位python解释器。
转到Eclipse->Preferences->PyDev->Interpreters->Python Interpreter
并添加一个新的32位python解释器。 32位python解释器的路径很可能与你通常的python解释器相同,只是文件被称为“python2.7-32”而不是“python2.7”(如果python版本是2.7)。所以,对我而言:"/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7-32"
。
设置完成后,您可以将其设为默认解释器或从中进行选择
使用PyGame时Project->Properties->PyDev - Interpreter/Grammar
。