使用pip安装SciPy
近期,有用户尝试使用easy_install
安装SciPy时发现了问题,提示在Python软件包索引(Python Package Index)中的SciPy列表有问题。不过,幸运的是,用户可以通过pip
从Subversion(SVN)、Git、Mercurial和Bazaar仓库进行安装。SciPy使用的是SVN,所以可以使用以下命令进行安装:pip install svn+http://svn.scipy.org/svn/scipy/trunk/#egg=scipy
。另外,用户也可以使用以下命令安装: pip install git+https://github.com/scipy/scipy.git
。由于NumPy是SciPy的依赖项,所以在安装SciPy之前需要先安装NumPy。另外,根据Stack Overflow上的一篇回答,用户还可以选择安装特定版本的SciPy,例如安装最后一个稳定版本0.7.1:pip install http://svn.scipy.org/svn/scipy/!svn/bc/5839/trunk/
。虽然用户没有测试过这个方法。在其他用户的回答中,有人表示这个方法在OSX 10.8.2和Python 2.7上仍然可行,并解决了fortran编译失败的问题。不过,也有用户表示这个方法对他们不适用,可能是因为其他问题导致的。通过使用pip
从SVN或Git仓库安装SciPy可以解决在Python软件包索引中SciPy列表的问题,同时也可以选择安装特定版本的SciPy。
问题的原因是在安装SciPy时遇到了一些困难。
解决办法是首先安装一些先决条件,然后使用pip安装所需的软件包。先决条件包括以下内容:
- 安装build-essential、gfortran、libatlas-base-dev、python-pip和python-dev:
sudo apt-get install build-essential gfortran libatlas-base-dev python-pip python-dev
- 升级pip:
sudo pip install --upgrade pip
然后,使用pip安装所需的软件包,包括numpy和scipy:
sudo pip install numpy sudo pip install scipy
如果需要,还可以安装一些可选的软件包,如matplotlib、scikit-learn和pandas。
需要注意的是,不建议使用sudo pip install命令安装Python库,而是应该使用virtualenv和virtualenvwrapper来创建虚拟环境,然后在其中安装库。
另外,还需要确保系统有足够的内存,并在需要的情况下创建swap文件。如果遇到内存不足的错误,可以尝试创建swap文件来解决。
以上就是安装SciPy时可能遇到的问题的原因和解决方法。希望对大家有所帮助!
在Ubuntu 10.04 (Lucid)中,我成功地在虚拟环境中使用pip install scipy
安装了SciPy,但需要先安装一些依赖项,特别是:
$ sudo apt-get install libamd2.2.0 libblas3gf libc6 libgcc1 libgfortran3 liblapack3gf libumfpack5.4.0 libstdc++6 build-essential gfortran libatlas-sse2-dev python-all-dev
现在应该使用'libatlas-base-dev',而不是'libatlas-sse2-dev'
$ sudo apt-get install libamd2.2.0 libblas3gf libc6 libgcc1 libgfortran3 liblapack3gf libumfpack5.4.0 libstdc++6 build-essential gfortran libatlas-dev libatlas3-base python python-all-dev gcc g++ libblas-dev liblapack-dev
在Ubuntu 12.04上,可以使用sudo aptitude install python-scipy
进行安装
如果想使用最新版本的SciPy,最好先执行sudo apt-get build-dep python-scipy
,然后再使用pip安装SciPy。