尽管安装了python2.7和numpy,但安装scipy时遇到麻烦

时间:2013-11-12 23:38:49

标签: python scipy

我在通过http://sourceforge.net/projects/scipy/files/scipy/

提供的二进制文件安装scipy时遇到问题

安装dmg安装程序后双击mpkg文件会出现以下错误: “scipy 0.13.0无法在此磁盘上安装.scipy需要安装System Python 2.7”

但是,我已经安装了python 2.7和numpy。 python 2.7默认使用OSX Lion,所以我认为它是System Python。使用其他python模块,通常可以下载二进制文件然后运行 python setup.py install

有没有办法cd通过mpkg文件并找到setup.py?通过这个dmg安装程序安装任何建议吗?

我知道还有其他方法来管理python模块,比如port和brew。但是,我已经通过setup.py安装了一堆软件包,我无法弄清楚如何让端口识别这些软件包(例如,它会尝试通过端口重新安装python和numpy)

谢谢!

2 个答案:

答案 0 :(得分:0)

如果你有Mavericks和XCode 5,那么你必须从Apple Developer Site手动安装命令行工具。我找到了this helpful post

答案 1 :(得分:-1)

你在这里有一些误解。

  

使用其他python模块,通常可以下载二进制文件然后运行python setup.py install

不,这就是你使用包做的事情。

  

有没有办法cd通过mpkg文件并找到setup.py?

没有。 mpkg中的内容是pkg文件。其中充满了填充了cpio档案的xar档案。里面有SciPy的内置版本 - 也就是说,如果您运行它而不是源包,那么setup.py将复制到您的站点包的文件。

但您可以自己下载源包。

或者,更好的是,让pip(或easy_install,但pip更好)下载并运行setup.py。

  

通过此dmg安装程序安装任何建议吗?

如果它不起作用,我的建议是不使用它,而是安装pip

This blog post解释了这一点,但我会在下面向您提供与您相关的详细信息。

  

我知道还有其他方法来管理python模块,比如port和brew。但是,我已经通过setup.py安装了一堆软件包,而我无法弄清楚如何让端口识别这些软件包。

你不能。 MacPorts不会触及您的系统Python;它构建了自己独立的Python 2.7,具有完全独立的site-packages目录和其他所有内容。您将不得不重新安装第二个Python 2.7的所有内容。并解决在同一台机器上安装两个Python 2.7的困惑。

除非你绝对必须这样做,否则不要这样做。

事实上,如果你想使用Homebrew来实现任何东西(你会这样做,请参见下文),卸载MacPorts,除非你确实需要它。


所以,以下是步骤:

  • 卸载MacPorts。
  • 我假设您已经拥有Xcode及其命令行工具。
  • 我假设你已经有了Homebrew。
  • 使用brew install gfortran安装Fortran编译器。
  • Lion的Python 2.7附带easy_install,但不是pip。所以sudo easy_install pip来解决这个问题。虽然你已经开始了,但我建议sudo easy_install readline,因为你会想要ipython,而且它不会用pip工作。
  • Apple预装的NumPy必须升级,并使用Fortran支持重建,以使SciPy工作。使用sudo pip install --upgrade --force-reinstall numpy修复此问题。
  • 如果你想要ipython,pandas等等sudo pip install

如果您正在考虑尽快升级,除了为设置Xcode 5命令行工具而做的一些额外工作外,完全相同的步骤适用于OS X 10.9.0。