Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
918 views
in Technique[技术] by (71.8m points)

macos - How to set up pygame with Eclipse?

Edit3: Additional information: I was able to get the Eclipse/pygame combo running on Windows... just not on MacOSX.


Edit2: Compiling from the shell also works. Just Eclipse now :) What I've tried in Eclipse:

For the interpreter I use auto-config and it suggests /usr/bin/python as interpreter. Then for PYTHONPATH he suggests all the default stuff and I then add /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages in addition to the rest. I still have the unresolved package "syntax" error in the code, but when compiling the only error he complains about is that there is no appropriate 64-bit architecture.

../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)


Edit: I've now managed to be able to import pygame within IDLE and initialise pygame. In Eclipse I added the pygame path to PYTHONPATH but Eclipse complains about the architecture.


I want to use pygame in combination with Eclipse, Pydev and Python 2.7.

First I downloaded Python 2.7.3 and installed it. To be able to work in an IDE I installed Pydev on Eclipse. That all works and I am able to work in Eclipse with Pydev and the programs I test run without problems.

Then I went on and downloaded pygame and installed that too. (pygame download)

Now when I try:

import pygame
pygame.init()

Eclipse tells me: unresolved import: pygame and when I try to compile anyway I get following message:

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

Also when I start the IDLE app and try there to import pygame I get following error:

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

However if I use open Module... via IDLE and then open pygame the module is found. What am I missing?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

OK, I found the solution how to get it working. The key issues was that Eclipse chooses the 'wrong' interpreter. The Eclipse choice works fine for normal python stuff but when trying to compile pygame things it gets complicated and I get architecture errors.

So what I did:

  1. Get Eclipse Classic 3.7.2 32-bit here and install it.
  2. Install pydev for Eclipse (instructions for that here)
  3. Getting Python 2.7.3 for Mac OS X 10.3 (here) and install it
  4. Getting Pygame 1.9.1 32-bit for Python 2.7 (here) and install it

Now to the proper interpreter. Go to Eclipse->Settings->PyDev->Interpreter - Python and there create a New... interpreter. The one that worked for me is found in /Library/Frameworks/Python.framework/Versions/2.7/bin. There just select the python alias which will link to the correct one then.

Now make sure that your pygame is in your PYTHONPATH. To do so just add a New Folder in the lower half of the current menu and navigate to your pygame path (by default it is /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages)


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...