SciPy 在 Windows 上 Python 2.7 安装问题
SciPy on Windows with Python 2.7 install issues
想知道是否有人遇到过类似问题并且已经找到解决方案?使用 Windows 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'
一些软件包,例如 Scipy,需要使用 pip 构建编译器。 Windows 不附带编译器,因此您需要下载 windows 可以使用的 scipy 二进制文件。
来自加州大学欧文分校的一位名叫 Christopher Gohlke 的好人为 windows 开发了这些二进制文件。您可以找到它们 here。
注意:如果您没有安装 Numpy,则无法安装 SciPy。您还需要下载 Numpy 二进制文件(也可以找到 here)。只需按照后续步骤下载 numpy 模块,就像下载 scipy 模块一样。
你安装哪个 link 取决于你的 python 是 64 位还是 32 位版本,你可以通过在你的命令中使用 python 命令来检查如果您已将其安装到您的 PATH 中,请使用该行。这是可视化的:
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
您可以在括号中找到您的版本。如您所见,我正在 运行 宁 python 的 64 位版本。所以我会下载 "scipy-0.18.0-cp27-cp27m-win_amd64.whl" 文件,它假设我是 运行ning python 2.7(由 cp27 表示)在 python 的 64 位版本(由 amd64 表示) .
注意:还要确保 pip 已更新。您可以使用以下命令更新它:
C:\Users\Bobby\Downloads>pip install --upgrade pip
下载 SciPy 二进制文件后,将工作目录更改为下载文件夹和 运行 pip,但在下载中使用 .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
想知道是否有人遇到过类似问题并且已经找到解决方案?使用 Windows 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'
一些软件包,例如 Scipy,需要使用 pip 构建编译器。 Windows 不附带编译器,因此您需要下载 windows 可以使用的 scipy 二进制文件。
来自加州大学欧文分校的一位名叫 Christopher Gohlke 的好人为 windows 开发了这些二进制文件。您可以找到它们 here。
注意:如果您没有安装 Numpy,则无法安装 SciPy。您还需要下载 Numpy 二进制文件(也可以找到 here)。只需按照后续步骤下载 numpy 模块,就像下载 scipy 模块一样。
你安装哪个 link 取决于你的 python 是 64 位还是 32 位版本,你可以通过在你的命令中使用 python 命令来检查如果您已将其安装到您的 PATH 中,请使用该行。这是可视化的:
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
您可以在括号中找到您的版本。如您所见,我正在 运行 宁 python 的 64 位版本。所以我会下载 "scipy-0.18.0-cp27-cp27m-win_amd64.whl" 文件,它假设我是 运行ning python 2.7(由 cp27 表示)在 python 的 64 位版本(由 amd64 表示) .
注意:还要确保 pip 已更新。您可以使用以下命令更新它:
C:\Users\Bobby\Downloads>pip install --upgrade pip
下载 SciPy 二进制文件后,将工作目录更改为下载文件夹和 运行 pip,但在下载中使用 .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