【问题标题】:Numpy Installation for Python Ver-3.9 [duplicate]Python Ver-3.9 的 Numpy 安装 [重复]
【发布时间】:2020-10-07 05:45:12
【问题描述】:

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

C:\>pip3 install numpy
Collecting numpy

Using cached numpy-1.19.2.zip (7.3 MB)

Installing build dependencies ... done

Getting requirements to build wheel ... done

Preparing wheel metadata ... error

ERROR: Command errored out with exit status 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/
----------------------------------------
ERROR: Command errored out with exit status 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' Check the logs for full command output.

【问题讨论】:

    标签: python windows installation python-3.9


    【解决方案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 docs 推荐此站点。显然你必须选择与你的系统匹配的.whl文件。

    像这样使用pip 安装轮子:

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

    【讨论】:

    • 非常感谢...我安装了 anaconda...并使用 anaconda 安装了 numpy...使用 anaconda 安装了 numpy...但是如果我重新安装 python idle 将来肯定会使用您的建议跨度>
    • numpy确实包含二进制文件,但尚未为 Python 3.9 构建二进制文件(只有 刚刚 出现)。 Gohlke 在构建 Windows 轮子方面速度更快。
    【解决方案2】:

    最后几行说:

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

    你有 msvc 14 吗?

    【讨论】:

    • 我没有 msvc...我会安装并告诉它是否有效
    • 我仍然面临这个问题...同样的错误
    • 你显然没有亲自尝试过这个建议。您无法从该链接下载 VC++ 14,只能下载 VC++ 16。而且 VC++ 16 无法满足需要该确切版本的pip。虽然问题确实在distutils 内部,pip 调用它来在 Windows 中完成繁重的工作。我已通过github.com/pypa/setuptools/issues/2302setuptools 团队报告此问题。
    • 你错了,我试过了。我有同样的问题,它帮助了我。我在该链接上下载了 buildtools,之后我安装了 MSVC 14.0 组件。解决了我的问题。
    • 也许您可以写一个答案,准确地解释您从该链接如何安装 VC 14?我下载并运行它,然后distutils 去寻找vcvarsall.bat 并找不到它,并得出结论我没有安装VC++。所以我得到了同样的错误信息。该链接为您提供的 vanilla 安装是 VC++ 版本,在任何地方都没有 vcvarsall.bat。它在 VC++ 16 中对应的是 VsDevCmd.bat. 我没有看到安装其他版本的选项。如果你这么说的话,大概它就在某个地方,但这对 OP 或我来说都不清楚。
    猜你喜欢
    • 2021-02-07
    • 1970-01-01
    • 2021-02-25
    • 1970-01-01
    • 2021-02-03
    • 2021-02-07
    • 1970-01-01
    • 1970-01-01
    • 2015-07-12
    相关资源
    最近更新 更多