我正在运行OS X Lion,Python 2.7,我正在尝试将Pygame设置为在Eclipse中使用PyDev。我设置PyDev使用自定义安装的Python(不是默认的)。我强制这个安装使用32位,这在终端工作正常 - 我可以导入Pygame,和其他模块。但是,当我在PyDev中使用它时,它会给我一个no matching architecture
错误。它似乎也在64位模式下运行。
解释器的路径是相同的。
import sys
print ("%x" % sys.maxsize, sys.maxsize > 2**32)
在使用Terminal时打印出('7fffffff', False)
,但在Eclipse / PyDev中打印出('7fffffffffffffff', True)
两条路径(使用sys.executable)是:
在终端,它是:
/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python
在Eclipse中它是
/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python
我使用的口译员的路径是:/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7
我也尝试在终端中手动指定解释器 - 使用上面的路径。它奏效了。
系统附带的默认python是/usr/bin/python
我使用的是32位版本的Eclipse classic,如this question的答案所示。
有没有人知道出了什么问题?
答案 0 :(得分:0)
你需要指示eclipse使用32位python。
右键点击您的项目 - >属性 - > PyDen / Interpreter语法并选择“单击此处配置未列出的解释器”
添加新的python二进制文件(例如C:\ Python27 \ python.exe)后,返回属性窗口中的解释器菜单,然后从相应的下拉菜单中选择此解释器。
答案 1 :(得分:0)
我通过使用另一个question的答案中描述的方法解决了这个问题。
答案说要去你的插件/ org.python.pydev / pysrc并打开interpreterInfo.py。然后将sys.executable
的所有实例替换为所需解释器的路径。
就我而言,这意味着将它们更改为/Library/Frameworks/Python.framework/Version/2.7/bin/python2.7
之后,打开eclipse并使用相同的路径创建一个新的解释器,它应该可以工作。