Numpy安装API版本不匹配

时间:2012-10-30 03:40:30

标签: python macos numpy

我想在Mac OS X Lion上安装numpy,pylab,scipy和ipython。我安装了以下内容:

python-2.7.3-macosx10.6.dmg, 
numpy-1.6.1-py2.7-python.org-macosx10.6.dmg, 
matplotlib-1.1.1-py2.7-python.org-macosx10.6.dmg, 
scipy-0.11.0-py2.7-python.org-macosx10.6.dmg

并获得以下消息:

/var/folders/hm/bv37669175j2dvn_f87t4zcc0000gn/T/Cleanup\ At\ Startup/statistics_intro-373260522.639.py.command ; exit;
RuntimeError: module compiled against API version 6 but this version of numpy is 4
Traceback (most recent call last):
...
    from transforms import Bbox, IdentityTransform, TransformedBbox, TransformedPath
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/transforms.py", line 34, in <module>
    from matplotlib._path import affine_transform
ImportError: numpy.core.multiarray failed to import

许多用户似乎可以通过删除python并重新安装来获得numpy工作。我在/user/bin/Library中执行了此操作,但仍然收到错误消息。

3 个答案:

答案 0 :(得分:2)

最好的方法是使用自制程序:http://mxcl.github.com/homebrew/

基本上,为了获得你想要的东西,这里是以shell为根的步骤:

ruby -e "$(curl -fsSkL raw.github.com/mxcl/homebrew/go)"
brew install python # install python2.7
pip install numpy matplotlib scipy

它应该可以正常工作。

答案 1 :(得分:1)

依赖.dmg请求失望,因为您的个人设置可能与准备.dmg的人不符。您应该考虑从其来源安装不同的包。下载所需的存档,解压缩它们并在每个包中运行

python setup.py install --user

--user确保软件包将安装在~/.local中)。当然,您需要先从numpy开始,然后是scipy,然后是matplotlib,然后是ipython。然后,只需确保将~/.local添加到PYTHONPATH

手术虽然有点长,但应该相对无痛。确保你拥有编译所需的所有工具,但是(XCode是必须的,你还需要一个fortran编译器。)

答案 2 :(得分:0)

谢谢大家。我有Mac OS(1)从Lion升级到Mountain Lion(2)更新Python(3)指向Python27而不是系统Python。这并不能解释为什么Lion中的Python坏了,但我不再收到错误消息了!