我在 Mac 上运行并使用 Enthought python 我已经安装了 PIP,但在安装软件包时遇到了困难。
当我尝试安装 Pygame 时,软件包正在下载并开始构建,但随后出现错误。我意识到 Pygame 是一个相对复杂的包,但我对更简单的包也有类似的问题。因为我认为这可能与我安装的 Python 有关,所以我在最后显示了我的环境变量。任何帮助,将不胜感激
跟踪看起来像:
running build_ext
building 'pygame._numericsurfarray' extension
creating build/temp.macosx-10.5-i386-2.7
creating build/temp.macosx-10.5-i386-2.7/src
gcc -fno-strict-aliasing -fno-common -dynamic -arch i386 -DNDEBUG -g -O3 -arch i386 -I/NEED_INC_PATH_FIX -I/Library/Frameworks/Python.framework/Versions/7.3/include/python2.7 -c src/_numericsurfarray.c -o build/temp.macosx-10.5-i386-2.7/src/_numericsurfarray.o
In file included from src/_numericsurfarray.c:23:
src/pygame.h:106:17: error: SDL.h: No such file or directory
In file included from src/_numericsurfarray.c:23:
src/pygame.h:350: error: expected specifier-qualifier-list before ‘SDL_VideoInfo’
src/pygame.h:388: error: expected specifier-qualifier-list before ‘SDL_Surface’
src/_numericsurfarray.c:26:27: error: SDL_byteorder.h: No such file or directory
....
....
...
....
src/_numericsurfarray.c:1097: error: expected declaration specifiers or ‘...’ before ‘SDL_Surface’
error: command 'gcc' failed with exit status 1
Command /Library/Frameworks/Python.framework/Versions/7.3/Resources/Python.app/Contents/MacOS/Python -c "import setuptools;__file__='/var/folders/9m/qcp8h8ss4ng1v8429jvnkkrc0000gn/T/pip-build/pygame/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/9m/qcp8h8ss4ng1v8429jvnkkrc0000gn/T/pip-roxs9O-record/install-record.txt --single-version-externally-managed failed with error code 1 in /var/folders/9m/qcp8h8ss4ng1v8429jvnkkrc0000gn/T/pip-build/pygame
Storing complete log in /Users/jc_macpro/.pip/pip.log
我的环境变量是:
TERM_PROGRAM=Apple_Terminal
TERM=xterm-256color
SHELL=/bin/bash
TMPDIR=/var/folders/9m/qcp8h8ss4ng1v8429jvnkkrc0000gn/T/
Apple_PubSub_Socket_Render=/tmp/launch-iwuiuZ/Render
TERM_PROGRAM_VERSION=309
TERM_SESSION_ID=FDC661E1-1196-448F-8D69-28AD9D7C496B
USER=jc_macpro
COMMAND_MODE=unix2003
SSH_AUTH_SOCK=/tmp/launch-pH83z9/Listeners
__CF_USER_TEXT_ENCODING=0x1F5:0:0
Apple_Ubiquity_Message=/tmp/launch-s4tuBY/Apple_Ubiquity_Message
PATH=/Library/Frameworks/Python.framework/Versions/Current/bin:/Library/Frameworks/Python.framework/Versions/Current/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
PWD=/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages
LANG=en_US.UTF-8
SHLVL=1
HOME=/Users/jc_macpro
LOGNAME=jc_macpro
SECURITYSESSIONID=186a4
_=/usr/bin/env
OLDPWD=/Library/Frameworks/Python.framework/Versions/Current/bin
我将不胜感激任何帮助。
更新:12/22/12 我已经筛选了所有的建议和反馈,非常感谢。在 Enthought 上安装二进制文件的所有努力都没有奏效。我不想在 Macports 上增加更多的复杂性,所以我决定淘汰我的 Enthought python 并简单地使用官方的 Python 2.7。我是 Enthought 的忠实粉丝,当我开始使用 Python 时,它是提供稳定工作基础的好方法。然而,正如所指出的,它有一些局限性。
使用 Python 2.7 作为我的默认设置,我重新安装了 pip,添加了基本功能,然后能够安装 pygame、numpy、matplotlib 和 wxPython 所需的二进制文件。所以现在我开始工作了,但又一次危险了——就在官方的 Python 2.7 上!!谢谢你们。