Python 在 windows7 64 位上运行“pip install numpy”时出现“错误:无法找到 vcvarsall.bat”

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/24380442/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-19 04:31:23  来源:igfitidea点击:

Getting "error: Unable to find vcvarsall.bat" when running "pip install numpy" on windows7 64bit

pythonwindowsnumpy.net-4.5pip

提问by Tal Barda

I'm running pip install numpyon windows7 64bitand i'm getting error: Unable to find vcvarsall.bat

我跑pip install numpywindows7 64bit和我得到error: Unable to find vcvarsall.bat

I've already installed some packages with pip, e.g. pyzmq,pysolr,enum,etc., so I really don't know what went wrong.

我已经安装了某些包具有画中画,例如pyzmqpysolrenum等等,所以我真的不知道哪里出了问题。

The only thing that might be different is that I've install .NET framework version 4.5-> I suspect that could be the reason because in some posts I saw it might have to do with Visual Studio(That I didn't install)

唯一可能不同的是我已经安装.NET framework version 4.5-> 我怀疑这可能是原因,因为在某些帖子中我看到它可能与Visual Studio(我没有安装)有关

The full error/traceback:

完整的错误/追溯:

Downloading/unpacking numpy
      Running setup.py (path:c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\setup.py) egg_info for package numpy
        Running from numpy source directory.

    warning: no files found matching 'tools\py3tool.py'
    warning: no files found matching '*' under directory 'doc\f2py'
    warning: no previously-included files matching '*.pyc' found anywhere in distribution
    warning: no previously-included files matching '*.pyo' found anywhere in distribution
    warning: no previously-included files matching '*.pyd' found anywhere in distribution
Installing collected packages: numpy
  Running setup.py install for numpy
    non-existing path in 'numpy\distutils': 'site.cfg'
    F2PY Version 2
    blas_opt_info:
    blas_mkl_info:
      libraries mkl,vml,guide not found in ['C:\Python27\lib', 'C:\', 'C:\Python27\libs']
      NOT AVAILABLE

    openblas_info:
      libraries  not found in ['C:\Python27\lib', 'C:\', 'C:\Python27\libs']
      NOT AVAILABLE

    atlas_blas_threads_info:
    Setting PTATLAS=ATLAS
      libraries ptf77blas,ptcblas,atlas not found in ['C:\Python27\lib', 'C:\', 'C:\Python27\libs']
      NOT AVAILABLE

    atlas_blas_info:
      libraries f77blas,cblas,atlas not found in ['C:\Python27\lib', 'C:\', 'C:\Python27\libs']
      NOT AVAILABLE

    blas_info:
      libraries blas not found in ['C:\Python27\lib', 'C:\', 'C:\Python27\libs']
      NOT AVAILABLE

    blas_src_info:
      NOT AVAILABLE

      NOT AVAILABLE

    non-existing path in 'numpy\lib': 'benchmarks'
    lapack_opt_info:
    lapack_mkl_info:
    mkl_info:
      libraries mkl,vml,guide not found in ['C:\Python27\lib', 'C:\', 'C:\Python27\libs']
      NOT AVAILABLE

      NOT AVAILABLE

    atlas_threads_info:
    Setting PTATLAS=ATLAS
      libraries ptf77blas,ptcblas,atlas not found in C:\Python27\lib
      libraries lapack_atlas not found in C:\Python27\lib
      libraries ptf77blas,ptcblas,atlas not found in C:\
      libraries lapack_atlas not found in C:\
      libraries ptf77blas,ptcblas,atlas not found in C:\Python27\libs
      libraries lapack_atlas not found in C:\Python27\libs
    numpy.distutils.system_info.atlas_threads_info
      NOT AVAILABLE

    atlas_info:
      libraries f77blas,cblas,atlas not found in C:\Python27\lib
      libraries lapack_atlas not found in C:\Python27\lib
      libraries f77blas,cblas,atlas not found in C:\
      libraries lapack_atlas not found in C:\
      libraries f77blas,cblas,atlas not found in C:\Python27\libs
      libraries lapack_atlas not found in C:\Python27\libs
    numpy.distutils.system_info.atlas_info
      NOT AVAILABLE

    lapack_info:
      libraries lapack not found in ['C:\Python27\lib', 'C:\', 'C:\Python27\libs']
      NOT AVAILABLE

    lapack_src_info:
      NOT AVAILABLE

      NOT AVAILABLE

    unifing config_cc, config, build_clib, build_ext, build commands --compiler options
    unifing config_fc, config, build_clib, build_ext, build commands --fcompiler options
    build_src
    building py_modules sources
    building library "npymath" sources
    No module named msvccompiler in numpy.distutils; trying from distutils
    Running from numpy source directory.
    c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\numpy\distutils\system_info.py:1521: UserWarning:
        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__)
    c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\numpy\distutils\system_info.py:1530: 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.
      warnings.warn(BlasNotFoundError.__doc__)
    c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\numpy\distutils\system_info.py:1533: 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.
      warnings.warn(BlasSrcNotFoundError.__doc__)
    c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\numpy\distutils\system_info.py:1427: UserWarning:
        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__)
    c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\numpy\distutils\system_info.py:1438: 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.
      warnings.warn(LapackNotFoundError.__doc__)
    c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\numpy\distutils\system_info.py:1441: 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.
      warnings.warn(LapackSrcNotFoundError.__doc__)
    C:\Python27\lib\distutils\dist.py:267: UserWarning: Unknown distribution option: 'define_macros'
      warnings.warn(msg)
    error: Unable to find vcvarsall.bat
    Complete output from command C:\Python27\python.exe -c "import setuptools, tokenize;__file__='c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\users\zebra\appdata\local\temp\pip-py_oa_-record\install-record.txt --single-version-externally-managed --compile:
    non-existing path in 'numpy\distutils': 'site.cfg'

F2PY Version 2

blas_opt_info:

blas_mkl_info:

  libraries mkl,vml,guide not found in ['C:\Python27\lib', 'C:\', 'C:\Python27\libs']

  NOT AVAILABLE



openblas_info:

  libraries  not found in ['C:\Python27\lib', 'C:\', 'C:\Python27\libs']

  NOT AVAILABLE



atlas_blas_threads_info:

Setting PTATLAS=ATLAS

  libraries ptf77blas,ptcblas,atlas not found in ['C:\Python27\lib', 'C:\', 'C:\Python27\libs']

  NOT AVAILABLE



atlas_blas_info:

  libraries f77blas,cblas,atlas not found in ['C:\Python27\lib', 'C:\', 'C:\Python27\libs']

  NOT AVAILABLE



blas_info:

  libraries blas not found in ['C:\Python27\lib', 'C:\', 'C:\Python27\libs']

  NOT AVAILABLE



blas_src_info:

  NOT AVAILABLE



  NOT AVAILABLE



non-existing path in 'numpy\lib': 'benchmarks'

lapack_opt_info:

lapack_mkl_info:

mkl_info:

  libraries mkl,vml,guide not found in ['C:\Python27\lib', 'C:\', 'C:\Python27\libs']

  NOT AVAILABLE



  NOT AVAILABLE



atlas_threads_info:

Setting PTATLAS=ATLAS

  libraries ptf77blas,ptcblas,atlas not found in C:\Python27\lib

  libraries lapack_atlas not found in C:\Python27\lib

  libraries ptf77blas,ptcblas,atlas not found in C:\

  libraries lapack_atlas not found in C:\

  libraries ptf77blas,ptcblas,atlas not found in C:\Python27\libs

  libraries lapack_atlas not found in C:\Python27\libs

numpy.distutils.system_info.atlas_threads_info

  NOT AVAILABLE



atlas_info:

  libraries f77blas,cblas,atlas not found in C:\Python27\lib

  libraries lapack_atlas not found in C:\Python27\lib

  libraries f77blas,cblas,atlas not found in C:\

  libraries lapack_atlas not found in C:\

  libraries f77blas,cblas,atlas not found in C:\Python27\libs

  libraries lapack_atlas not found in C:\Python27\libs

numpy.distutils.system_info.atlas_info

  NOT AVAILABLE



lapack_info:

  libraries lapack not found in ['C:\Python27\lib', 'C:\', 'C:\Python27\libs']

  NOT AVAILABLE



lapack_src_info:

  NOT AVAILABLE



  NOT AVAILABLE



running install

running build

running config_cc

unifing config_cc, config, build_clib, build_ext, build commands --compiler options

running config_fc

unifing config_fc, config, build_clib, build_ext, build commands --fcompiler options

running build_src

build_src

building py_modules sources

creating build

creating build\src.win-amd64-2.7

creating build\src.win-amd64-2.7\numpy

creating build\src.win-amd64-2.7\numpy\distutils

building library "npymath" sources

No module named msvccompiler in numpy.distutils; trying from distutils

Running from numpy source directory.

c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\numpy\distutils\system_info.py:1521: UserWarning:

    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__)

c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\numpy\distutils\system_info.py:1530: 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.

  warnings.warn(BlasNotFoundError.__doc__)

c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\numpy\distutils\system_info.py:1533: 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.

  warnings.warn(BlasSrcNotFoundError.__doc__)

c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\numpy\distutils\system_info.py:1427: UserWarning:

    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__)

c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\numpy\distutils\system_info.py:1438: 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.

  warnings.warn(LapackNotFoundError.__doc__)

c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\numpy\distutils\system_info.py:1441: 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.

  warnings.warn(LapackSrcNotFoundError.__doc__)

C:\Python27\lib\distutils\dist.py:267: UserWarning: Unknown distribution option: 'define_macros'

  warnings.warn(msg)

error: Unable to find vcvarsall.bat

----------------------------------------
Cleaning up...
Command C:\Python27\python.exe -c "import setuptools, tokenize;__file__='c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy\setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\users\zebra\appdata\local\temp\pip-py_oa_-record\install-record.txt --single-version-externally-managed --compile failed with error code 1 in c:\users\zebra\appdata\local\temp\pip_build_zebra\numpy
Storing debug log for failure in C:\Users\zebra\pip\pip.log

回答by Rajesh Kumar

You need to download and install vcsetup.exe(Visual C++ 2008 express edition) file

您需要下载并安装vcsetup.exe(Visual C++ 2008 express edition)文件

And then add newly created vcvarsall.bat file path to "PATH" environment variable.

然后将新创建的 vcvarsall.bat 文件路径添加到“PATH”环境变量中。

Make sure there are no special symbols in your PATH environment variable after adding

添加后确保 PATH 环境变量中没有特殊符号

回答by Bj?rn Lindqvist

Maybe you want to use the prebuilt binaries here: http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy? Using pip likely wont yield any good results. The reason is that numpy doesn't compile with Visual Studio at all and needs to be built with gcc.

也许您想在此处使用预构建的二进制文件:http: //www.lfd.uci.edu/~gohlke/pythonlibs/#numpy?使用 pip 可能不会产生任何好的结果。原因是numpy根本不能用Visual Studio编译,需要用gcc编译。

If you still really want to compile numpy, you need to setup a Linux machine with Vagrant and follow the official build instructions here: https://github.com/juliantaylor/numpy-vendor

如果您仍然真的想编译 numpy,则需要使用 Vagrant 设置 Linux 机器并按照此处的官方构建说明进行操作:https: //github.com/juliantaylor/numpy-vendor

回答by Prasad DLV

For 64-bit systems, this problem can be resolved by the following 5 steps. (taken from http://springflex.blogspot.in/2014/02/how-to-fix-valueerror-when-trying-to.html)

对于64位系统,可以通过以下5个步骤解决这个问题。(取自http://springflex.blogspot.in/2014/02/how-to-fix-valueerror-when-trying-to.html

  1. download vcsetup.exe (Visual Studio 2008 Express installer) and install from : go.microsoft.com/?linkid=7729279
  2. Install the Microsoft Windows SDK from: http://www.microsoft.com/en-us/download/details.aspx?id=24826

    select web setup link under installation instructions to get an installer.

  3. Run the installer file unselect samples and documentation if they are not required

  4. Create a copy of the batch file "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvars64.bat" and rename it to "vcvarsamd64.bat" in the same folder.

  5. Copy the file "vcvarsamd64.bat" and paste it in the folder "C:\Program Files (x86)\Microsoft Visual Studio 9.0/VC/bin/amd64"

  1. 下载 vcsetup.exe(Visual Studio 2008 Express 安装程序)并从以下位置安装:go.microsoft.com/?linkid=7729279
  2. 从以下位置安装 Microsoft Windows SDK:http: //www.microsoft.com/en-us/download/details.aspx?id=24826

    选择安装说明下的 Web 设置链接以获取安装程序。

  3. 如果不需要,请运行安装程序文件取消选择示例和文档

  4. 创建批处理文件“C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvars64.bat”的副本,并将其重命名为同一文件夹中的“vcvarsamd64.bat”。

  5. 复制文件“vcvarsamd64.bat”并将其粘贴到文件夹“C:\Program Files (x86)\Microsoft Visual Studio 9.0/VC/bin/amd64”中

回答by bskp

Had the same problem on my 64-Bit Windows. The issue was resolved by installing the Microsoft Visual C++ Compiler for Python 2.7, which is described by Microsoft as:

在我的 64 位 Windows 上有同样的问题。该问题已通过安装Microsoft Visual C++ Compiler for Python 2.7 解决,Microsoft 将其描述为:

This package contains the compiler and set of system headers necessary for producing binary wheels for Python packages. A binary wheel of a Python package can then be installed on any Windows system without requiring access to a C compiler.

The typical error message you will receive if you need this compiler package is Unable to find vcvarsall.bat

...

该包包含为 Python 包生成二进制轮所需的编译器和系统头文件集。然后可以在任何 Windows 系统上安装 Python 包的二进制轮,而无需访问 C 编译器。

如果您需要此编译器包,您将收到的典型错误消息是Unable to find vcvarsall.bat

...

Works like a charm.

奇迹般有效。

回答by user3142459

A procedure which works on my Windows 7, 64 bit, and Python 2.7 is to download the binaries of numpydirectly from Sourceforge. E.g. numpy-1.9.2-win32-superpack-python2.7.exe.

在我的 Windows 7、64 位和 Python 2.7 上运行的过程是直接从 Sourceforge下载numpy的二进制文件。例如 numpy-1.9.2-win32-superpack-python2.7.exe。

Then extract the EXE files for example with 7z. There will be three EXE files, e.g. numpy-1.9.2-nosse.exe, numpy-1.9.2-sse2.exe, numpy-1.9.2-sse3.exe.

然后使用 7z 提取 EXE 文件。将有三个 EXE 文件,例如 numpy-1.9.2-nosse.exe、numpy-1.9.2-sse2.exe、numpy-1.9.2-sse3.exe。

Choose the appropriate now. On more or less modern processors SSE3 will be fine.

现在选择合适的。在或多或少的现代处理器上,SSE3 会很好。

SciPy works with the same procedure: SF-link

SciPy 使用相同的程序:SF-link

If binaries are OK for you, the only disadvantage is that you cannot update the packages via pip.

如果二进制文件适合你,唯一的缺点是你不能通过 pip 更新包。

回答by VISHAL KAMBLE

Try to run below commands. I faced similar issue, but for some other module. It got resolved after running below commands.

尝试运行以下命令。我遇到了类似的问题,但对于其他一些模块。运行以下命令后它得到了解决。

python -m pip install -U pip

python -m pip install -U pip

pip install -U setuptools

pip install -U setuptools

pip install -U virtualenv

pip install -U virtualenv