适用于Python版本3.9的Numpy安装

时间:2020-10-07 05:45:12

标签: python windows installation python-3.9

我正在尝试安装NumPy,但遇到了问题。 我使用的python ver是3.9,Windows版本是10。 错误如下:

C:> pip3安装numpy 收集numpy

使用缓存的numpy-1.19.2.zip(7.3 MB)

安装构建依赖项...完成

获得构建车轮的要求...完成

正在准备车轮元数据...错误

错误:命令错误,退出状态为1:

 command: 'c:\users\arr48\appdata\local\programs\python\python39\python.exe' 'c:\users\arr48\appdata\local\programs\python\python39\lib\site-packages\pip\_vendor\pep517\_in_process.py' prepare_metadata_for_build_wheel 'C:\Users\arr48\AppData\Local\Temp\tmp0g3__7ax'
     cwd: C:\Users\arr48\AppData\Local\Temp\pip-install-fincp1mj\numpy
Complete output (200 lines):
Running from numpy source directory.
setup.py:470: UserWarning: Unrecognized setuptools command, proceeding with generating Cython sources and expanding templates
  run_build = parse_setuppy_commands()
Processing numpy/random\_bounded_integers.pxd.in
Processing numpy/random\bit_generator.pyx
Processing numpy/random\mtrand.pyx
Processing numpy/random\_bounded_integers.pyx.in
Processing numpy/random\_common.pyx
Processing numpy/random\_generator.pyx
Processing numpy/random\_mt19937.pyx
Processing numpy/random\_pcg64.pyx
Processing numpy/random\_philox.pyx
Processing numpy/random\_sfc64.pyx
Cythonizing sources
blas_opt_info:
blas_mkl_info:
No module named 'numpy.distutils._msvccompiler' in numpy.distutils; trying from distutils
customize MSVCCompiler
  libraries mkl_rt not found in ['c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\lib', 'C:\\', 'c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\libs']
  NOT AVAILABLE

blis_info:
  libraries blis not found in ['c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\lib', 'C:\\', 'c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\libs']
  NOT AVAILABLE

openblas_info:
  libraries openblas not found in ['c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\lib', 'C:\\', 'c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\libs']
get_default_fcompiler: matching types: '['gnu', 'intelv', 'absoft', 'compaqv', 'intelev', 'gnu95', 'g95', 'intelvem', 'intelem', 'flang']'
customize GnuFCompiler
Could not locate executable g77
Could not locate executable f77
customize IntelVisualFCompiler
Could not locate executable ifort
Could not locate executable ifl
customize AbsoftFCompiler
Could not locate executable f90
customize CompaqVisualFCompiler
Could not locate executable DF
customize IntelItaniumVisualFCompiler
Could not locate executable efl
customize Gnu95FCompiler
Could not locate executable gfortran
Could not locate executable f95
customize G95FCompiler
Could not locate executable g95
customize IntelEM64VisualFCompiler
customize IntelEM64TFCompiler
Could not locate executable efort
Could not locate executable efc
customize PGroupFlangCompiler
Could not locate executable flang
don't know how to compile Fortran code on platform 'nt'
  NOT AVAILABLE

atlas_3_10_blas_threads_info:
Setting PTATLAS=ATLAS
  libraries tatlas not found in ['c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\lib', 'C:\\', 'c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\libs']
  NOT AVAILABLE

atlas_3_10_blas_info:
  libraries satlas not found in ['c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\lib', 'C:\\', 'c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\libs']
  NOT AVAILABLE

atlas_blas_threads_info:
Setting PTATLAS=ATLAS
  libraries ptf77blas,ptcblas,atlas not found in ['c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\lib', 'C:\\', 'c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\libs']
  NOT AVAILABLE

atlas_blas_info:
  libraries f77blas,cblas,atlas not found in ['c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\lib', 'C:\\', 'c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\libs']
  NOT AVAILABLE

accelerate_info:
  NOT AVAILABLE

C:\Users\arr48\AppData\Local\Temp\pip-install-fincp1mj\numpy\numpy\distutils\system_info.py:1914: UserWarning:
    Optimized (vendor) Blas libraries are not found.
    Falls back to netlib Blas library which has worse performance.
    A better performance should be easily gained by switching
    Blas library.
  if self._calc_info(blas):
blas_info:
  libraries blas not found in ['c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\lib', 'C:\\', 'c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\libs']
  NOT AVAILABLE

C:\Users\arr48\AppData\Local\Temp\pip-install-fincp1mj\numpy\numpy\distutils\system_info.py:1914: UserWarning:
    Blas (http://www.netlib.org/blas/) libraries not found.
    Directories to search for the libraries can be specified in the
    numpy/distutils/site.cfg file (section [blas]) or by setting
    the BLAS environment variable.
  if self._calc_info(blas):
blas_src_info:
  NOT AVAILABLE

C:\Users\arr48\AppData\Local\Temp\pip-install-fincp1mj\numpy\numpy\distutils\system_info.py:1914: UserWarning:
    Blas (http://www.netlib.org/blas/) sources not found.
    Directories to search for the sources can be specified in the
    numpy/distutils/site.cfg file (section [blas_src]) or by setting
    the BLAS_SRC environment variable.
  if self._calc_info(blas):
  NOT AVAILABLE

non-existing path in 'numpy\\distutils': 'site.cfg'
lapack_opt_info:
lapack_mkl_info:
  libraries mkl_rt not found in ['c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\lib', 'C:\\', 'c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\libs']
  NOT AVAILABLE

openblas_lapack_info:
  libraries openblas not found in ['c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\lib', 'C:\\', 'c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\libs']
  NOT AVAILABLE

openblas_clapack_info:
  libraries openblas,lapack not found in ['c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\lib', 'C:\\', 'c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\libs']
  NOT AVAILABLE

flame_info:
  libraries flame not found in ['c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\lib', 'C:\\', 'c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\libs']
  NOT AVAILABLE

atlas_3_10_threads_info:
Setting PTATLAS=ATLAS
  libraries lapack_atlas not found in c:\users\arr48\appdata\local\programs\python\python39\lib
  libraries tatlas,tatlas not found in c:\users\arr48\appdata\local\programs\python\python39\lib
  libraries lapack_atlas not found in C:\
  libraries tatlas,tatlas not found in C:\
  libraries lapack_atlas not found in c:\users\arr48\appdata\local\programs\python\python39\libs
  libraries tatlas,tatlas not found in c:\users\arr48\appdata\local\programs\python\python39\libs
<class 'numpy.distutils.system_info.atlas_3_10_threads_info'>
  NOT AVAILABLE

atlas_3_10_info:
  libraries lapack_atlas not found in c:\users\arr48\appdata\local\programs\python\python39\lib
  libraries satlas,satlas not found in c:\users\arr48\appdata\local\programs\python\python39\lib
  libraries lapack_atlas not found in C:\
  libraries satlas,satlas not found in C:\
  libraries lapack_atlas not found in c:\users\arr48\appdata\local\programs\python\python39\libs
  libraries satlas,satlas not found in c:\users\arr48\appdata\local\programs\python\python39\libs
<class 'numpy.distutils.system_info.atlas_3_10_info'>
  NOT AVAILABLE

atlas_threads_info:
Setting PTATLAS=ATLAS
  libraries lapack_atlas not found in c:\users\arr48\appdata\local\programs\python\python39\lib
  libraries ptf77blas,ptcblas,atlas not found in c:\users\arr48\appdata\local\programs\python\python39\lib
  libraries lapack_atlas not found in C:\
  libraries ptf77blas,ptcblas,atlas not found in C:\
  libraries lapack_atlas not found in c:\users\arr48\appdata\local\programs\python\python39\libs
  libraries ptf77blas,ptcblas,atlas not found in c:\users\arr48\appdata\local\programs\python\python39\libs
<class 'numpy.distutils.system_info.atlas_threads_info'>
  NOT AVAILABLE

atlas_info:
  libraries lapack_atlas not found in c:\users\arr48\appdata\local\programs\python\python39\lib
  libraries f77blas,cblas,atlas not found in c:\users\arr48\appdata\local\programs\python\python39\lib
  libraries lapack_atlas not found in C:\
  libraries f77blas,cblas,atlas not found in C:\
  libraries lapack_atlas not found in c:\users\arr48\appdata\local\programs\python\python39\libs
  libraries f77blas,cblas,atlas not found in c:\users\arr48\appdata\local\programs\python\python39\libs
<class 'numpy.distutils.system_info.atlas_info'>
  NOT AVAILABLE

lapack_info:
  libraries lapack not found in ['c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\lib', 'C:\\', 'c:\\users\\arr48\\appdata\\local\\programs\\python\\python39\\libs']
  NOT AVAILABLE

C:\Users\arr48\AppData\Local\Temp\pip-install-fincp1mj\numpy\numpy\distutils\system_info.py:1748: UserWarning:
    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.
  return getattr(self, '_calc_info_{}'.format(name))()
lapack_src_info:
  NOT AVAILABLE

C:\Users\arr48\AppData\Local\Temp\pip-install-fincp1mj\numpy\numpy\distutils\system_info.py:1748: UserWarning:
    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.
  return getattr(self, '_calc_info_{}'.format(name))()
  NOT AVAILABLE

numpy_linalg_lapack_lite:
  FOUND:
    language = c
    define_macros = [('HAVE_BLAS_ILP64', None), ('BLAS_SYMBOL_SUFFIX', '64_')]

c:\users\arr48\appdata\local\programs\python\python39\lib\distutils\dist.py:274: UserWarning: Unknown distribution option: 'define_macros'
  warnings.warn(msg)
running dist_info
running build_src
build_src
building py_modules sources
creating build
creating build\src.win-amd64-3.9
creating build\src.win-amd64-3.9\numpy
creating build\src.win-amd64-3.9\numpy\distutils
building library "npymath" sources
error: Microsoft Visual C++ 14.0 is required. Get it with "Build Tools for Visual Studio": https://visualstudio.microsoft.com/downloads/
----------------------------------------

错误:命令错误,退出状态为1:

'c:\ users \ arr48 \ appdata \ local \ programs \ python \ python39 \ python.exe'

'c:\ users \ arr48 \ appdata \ local \ programs \ python \ python39 \ lib \ site-

packages \ pip_vendor \ pep517_in_process.py'prepare_metadata_for_build_wheel

'C:\ Users \ arr48 \ AppData \ Local \ Temp \ tmp0g3__7ax'检查日志以获取完整的命令输出。

2 个答案:

答案 0 :(得分:1)

最后一行说:

“错误:需要Microsoft Visual C ++ 14.0。请使用“ Visual Studio的构建工具”来获取它:https://visualstudio.microsoft.com/downloads/"

您有msvc 14吗?

答案 1 :(得分:1)

numpy软件包尚未包含适用于Python 3.9的二进制文件,因此pip尝试从源代码进行编译。如错误消息所示,这(当然)要求您具有适当的C编译器。那不是直截了当的。 pip要使用Visual C ++ 14.2。 Microsoft唯一可用的唯一版本是Visual C ++ 2019,也称为版本16,不适用于pip。您可以从https://visualstudio.microsoft.com/vs/older-downloads/获取Visual C ++ 2015(又称版本14)。但似乎只有最新版本是免费的。您可能需要支付旧版本的费用。即使那样,仅仅拥有编译器也是不够的。您必须对其进行配置,但这并不适合胆小的人。

相反,请从Christoph Gohlke的站点https://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy下载预包装的二进制车轮。官方scipy.org文档推荐此网站。显然,您必须选择与您的系统匹配的.whl文件。

使用pip安装车轮,如下所示:

pip install D:\Users\<user>\Downloads\numpy-1.19.2+mkl-cp39-cp39-win_amd64.whl