2016-08-21 27 views
0

想知道是否有人遇到过类似的问题并且已经有解决方案?使用Windows 7Windows上的SciPy与Python 2.7安装问题

C:\Python27\Scripts>pip install SciPy 
Collecting SciPy 
    Using cached scipy-0.18.0.tar.gz 
Installing collected packages: SciPy 
    Running setup.py install for SciPy ... error 
    Complete output from command c:\python27\python.exe -u -c "import setuptools 
, tokenize;__file__='c:\\users\\foo\\appdata\\local\\temp\\pip-build-r3jpxr\\ 
SciPy\\setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().r 
eplace('\r\n', '\n'), __file__, 'exec'))" install --record c:\users\foo\appda 
ta\local\temp\pip-efo9to-record\install-record.txt --single-version-externally-m 
anaged --compile: 

    Note: if you need reliable uninstall behavior, then install 
    with pip instead of using `setup.py install`: 

     - `pip install .`  (from a git repo or downloaded source 
           release) 
     - `pip install scipy` (last SciPy release on PyPI) 


    lapack_opt_info: 
    openblas_lapack_info: 
     libraries openblas not found in ['c:\\python27\\lib', 'C:\\', 'c:\\python2 
7\\libs'] 
     NOT AVAILABLE 

    lapack_mkl_info: 
    mkl_info: 
     libraries mkl,vml,guide not found in ['c:\\python27\\lib', 'C:\\', 'c:\\py 
thon27\\libs'] 
     NOT AVAILABLE 

     NOT AVAILABLE 

    atlas_3_10_threads_info: 
    Setting PTATLAS=ATLAS 
    c:\python27\lib\site-packages\numpy\distutils\system_info.py:639: UserWarnin 
g: Specified path C:\projects\windows-wheel-builder\atlas-builds\atlas-3.11.38-s 
se2-64\lib is invalid. 
     warnings.warn('Specified path %s is invalid.' % d) 
    <class 'numpy.distutils.system_info.atlas_3_10_threads_info'> 
     NOT AVAILABLE 

    atlas_3_10_info: 
    <class 'numpy.distutils.system_info.atlas_3_10_info'> 
     NOT AVAILABLE 

    atlas_threads_info: 
    Setting PTATLAS=ATLAS 
    <class 'numpy.distutils.system_info.atlas_threads_info'> 
     NOT AVAILABLE 

    atlas_info: 
    <class 'numpy.distutils.system_info.atlas_info'> 
     NOT AVAILABLE 

    c:\python27\lib\site-packages\numpy\distutils\system_info.py:1548: UserWarni 
ng: 
     Atlas (http://math-atlas.sourceforge.net/) libraries not found. 
     Directories to search for the libraries can be specified in the 
     numpy/distutils/site.cfg file (section [atlas]) or by setting 
     the ATLAS environment variable. 
     warnings.warn(AtlasNotFoundError.__doc__) 
    lapack_info: 
     libraries lapack not found in ['c:\\python27\\lib', 'C:\\', 'c:\\python27\ 
\libs'] 
     NOT AVAILABLE 

    c:\python27\lib\site-packages\numpy\distutils\system_info.py:1559: UserWarni 
ng: 
     Lapack (http://www.netlib.org/lapack/) libraries not found. 
     Directories to search for the libraries can be specified in the 
     numpy/distutils/site.cfg file (section [lapack]) or by setting 
     the LAPACK environment variable. 
     warnings.warn(LapackNotFoundError.__doc__) 
    lapack_src_info: 
     NOT AVAILABLE 

    c:\python27\lib\site-packages\numpy\distutils\system_info.py:1562: UserWarni 
ng: 
     Lapack (http://www.netlib.org/lapack/) sources not found. 
     Directories to search for the sources can be specified in the 
     numpy/distutils/site.cfg file (section [lapack_src]) or by setting 
     the LAPACK_SRC environment variable. 
     warnings.warn(LapackSrcNotFoundError.__doc__) 
     NOT AVAILABLE 

    Running from scipy source directory. 
    Traceback (most recent call last): 
     File "<string>", line 1, in <module> 
     File "c:\users\foo\appdata\local\temp\pip-build-r3jpxr\SciPy\setup.py", 
line 415, in <module> 
     setup_package() 
     File "c:\users\foo\appdata\local\temp\pip-build-r3jpxr\SciPy\setup.py", 
line 411, in setup_package 
     setup(**metadata) 
     File "c:\python27\lib\site-packages\numpy\distutils\core.py", line 135, in 
setup 
     config = configuration() 
     File "c:\users\foo\appdata\local\temp\pip-build-r3jpxr\SciPy\setup.py", 
line 335, in configuration 
     config.add_subpackage('scipy') 
     File "c:\python27\lib\site-packages\numpy\distutils\misc_util.py", line 10 
03, in add_subpackage 
     caller_level = 2) 
     File "c:\python27\lib\site-packages\numpy\distutils\misc_util.py", line 97 
2, in get_subpackage 
     caller_level = caller_level + 1) 
     File "c:\python27\lib\site-packages\numpy\distutils\misc_util.py", line 90 
9, in _get_configuration_from_setup_py 
     config = setup_module.configuration(*args) 
     File "scipy\setup.py", line 15, in configuration 
     config.add_subpackage('linalg') 
     File "c:\python27\lib\site-packages\numpy\distutils\misc_util.py", line 10 
03, in add_subpackage 
     caller_level = 2) 
     File "c:\python27\lib\site-packages\numpy\distutils\misc_util.py", line 97 
2, in get_subpackage 
     caller_level = caller_level + 1) 
     File "c:\python27\lib\site-packages\numpy\distutils\misc_util.py", line 90 
9, in _get_configuration_from_setup_py 
     config = setup_module.configuration(*args) 
     File "scipy\linalg\setup.py", line 20, in configuration 
     raise NotFoundError('no lapack/blas resources found') 
    numpy.distutils.system_info.NotFoundError: no lapack/blas resources found 

    ---------------------------------------- 
Command "c:\python27\python.exe -u -c "import setuptools, tokenize;__file__='c:\ 
\users\\foo\\appdata\\local\\temp\\pip-build-r3jpxr\\SciPy\\setup.py';exec(co 
mpile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __ 
file__, 'exec'))" install --record c:\users\foo\appdata\local\temp\pip-efo9to 
-record\install-record.txt --single-version-externally-managed --compile" failed 
with error code 1 in c:\users\foo\appdata\local\temp\pip-build-r3jpxr\SciPy\ 

编辑1,试图pip install scipy-0.18.0-cp27-cp27m-win_amd64.whl,但遇到了奇怪的问题,

C:\Python27\Scripts>pip install scipy-0.18.0-cp27-cp27m-win_amd64.whl 
Requirement 'scipy-0.18.0-cp27-cp27m-win_amd64.whl' looks like a filename, but t 
he file does not exist 
Processing c:\python27\scripts\scipy-0.18.0-cp27-cp27m-win_amd64.whl 
Exception: 
Traceback (most recent call last): 
    File "c:\python27\lib\site-packages\pip\basecommand.py", line 215, in main 
    status = self.run(options, args) 
    File "c:\python27\lib\site-packages\pip\commands\install.py", line 299, in run 

    requirement_set.prepare_files(finder) 
    File "c:\python27\lib\site-packages\pip\req\req_set.py", line 370, in prepare_ 
files 
    ignore_dependencies=self.ignore_dependencies)) 
    File "c:\python27\lib\site-packages\pip\req\req_set.py", line 587, in _prepare 
_file 
    session=self.session, hashes=hashes) 
    File "c:\python27\lib\site-packages\pip\download.py", line 798, in unpack_url 
    unpack_file_url(link, location, download_dir, hashes=hashes) 
    File "c:\python27\lib\site-packages\pip\download.py", line 705, in unpack_file 
_url 
    unpack_file(from_path, location, content_type, link) 
    File "c:\python27\lib\site-packages\pip\utils\__init__.py", line 599, in unpac 
k_file 
    flatten=not filename.endswith('.whl') 
    File "c:\python27\lib\site-packages\pip\utils\__init__.py", line 482, in unzip 
_file 
    zipfp = open(filename, 'rb') 
IOError: [Errno 2] No such file or directory: 'C:\\Python27\\Scripts\\scipy-0.18 
.0-cp27-cp27m-win_amd64.whl' 
+1

它看起来像你缺少一些需要的库之前,你可以安装scipy。我会推荐'pip安装conda'然后'conda安装scipy' – James

+0

感谢James,conda的问题是它对matplotlib不太适用,请参阅此处的讨论。 http://stackoverflow.com/questions/39059732/using-matplotlib-on-mac-for-python-2-7,如果你有一些解决方案,使conda和matplotlib一起工作,欣赏共享。 –

回答

5

一些软件包,如SciPy的,需要使用PIP建立一个编译器。 Windows没有附带一个编译器,所以你需要下载一个scipy的二进制文件,Windows可以使用。

来自加州大学欧文分校的一位名叫克里斯托弗·戈尔克的精彩男人为Windows开发了这些二进制文件。你可以找到它们here

注意:如果您没有安装Numpy,则无法安装SciPy。你还需要下载Numpy Binary(还发现here)。只需按照随后的步骤下载numpy模块,就像下载scipy模块一样。

您安装哪个链接取决于您是否拥有64位或32位版本的python,如果您已将它安装到PATH上,您可以在命令行上使用python命令进行检查。这里是可视化的:

C:\Users\Bobby>python 
Python 2.7.11 (v2.7.11:6d1b6a68f775, Dec 5 2015, 20:40:30) [MSC v.1500 64 bit (AMD64)] on win32 

你可以在括号中找到你的版本。正如你所看到的,我正在运行一个64位版本的python。因此,我将下载“scipy-0.18.0-cp27-cp27m-win_amd64.whl”文件,该文件假定我在64位版本的python上运行python 2.7(由ycp27表示)(由amd64表示)。

注意:还要确保点更新。您可以使用以下命令来更新它:

C:\Users\Bobby\Downloads>pip install --upgrade pip 

一旦SciPy的二进制下载,改变你的工作目录到您的下载文件夹,运行点子,但使用.whl文件在您的下载。这是它可视化:

C:\Users\Bobby>cd Downloads 
C:\Users\Bobby\Downloads>pip install scipy-0.18.0-cp27-cp27m-win_amd64.whl 
Processing c:\users\bobby\downloads\scipy-0.18.0-cp27-cp27m-win_amd64.whl 
Installing collected packages: scipy 
Successfully installed scipy-0.18.0 
+0

感谢Robert,所以我不仅需要安装'pip install scipy-0.18.0-cp27-cp27m-win_amd64.whl',还需要使用你提到的方法再次安装'numpy'? –

+1

如果您正在Python 2.7上运行64位版本的python,则只安装pip install“scipy-0.18.0-cp27-cp27m-win_amd64.whl”。否则,它会给你一个讨厌的错误。 但是。如果您尚未安装,请使用相同的方法安装numpy。你需要numpy才能下载scipy。否则,你也会得到一个令人讨厌的错误。 –

+0

感谢罗伯特,试过命令安装scipy,但遇到奇怪的问题,你可以参考编辑1部分的细节,你认为它与numpy有关吗? –