小编典典

Python Pip安装错误:找不到vcvarsall.bat。尝试了所有解决方案

python

我尝试使用以下方法为32位Python安装Scrapy for Python 2.7.8(anaconda 2.1.0)

pip install scrapy

我得到这个错误

 error: Microsoft Visual C++ 10.0 is required (Unable to find vcvarsall.bat).

这是错误,在错误的上方和下方都有几行:

copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\readme.txt
-> build\lib.win32-3.4\lxml\isoschematron\resources\xsl\iso-schematron-xslt1

running build_ext

building 'lxml.etree' extension

C:\Python34\lib\distutils\dist.py:260: UserWarning: Unknown distribution opt
ion: 'bugtrack_url'

  warnings.warn(msg)

error: Microsoft Visual C++ 10.0 is required (Unable to find vcvarsall.bat).


----------------------------------------
Command "C:\Python34\python.exe -c "import setuptools, tokenize;__file__='C:
\\Users\\San\\AppData\\Local\\Temp\\pip-build-wp6ei6r9\\lxml\\setup.py';exec(com
pile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __f
ile__, 'exec'))" install --record C:\Users\San\AppData\Local\Temp\pip-kfkzr_67-r
ecord\install-record.txt --single-version-externally-managed --compile" failed w
ith error code 1 in C:\Users\San\AppData\Local\Temp\pip-build-wp6ei6r9\lxml

我同时拥有Microsoft Visual Studio 12.0和适用于Python 2.7的Microsoft Visual C
++编译器程序包,两者均具有vcvarsall.bat文件。


我有一个名为“ VS120COMNTOOLS”的系统变量,其路径设置为

C:\Program Files\Microsoft Visual Studio 12.0\Common7\Tools\

我还将两条路径都添加到了环境变量中。我也尝试过只添加一个,然后添加另一个。我的路径看起来像这样

C:\Program Files\Java\jdk1.7.0_25\bin;\Python27;\Python2\python.exe;C:\Python27\Scripts\;C:\Users\San\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\;C:\Program Files\Microsoft Visual Studio 12.0\VC\;

我还通过安装工具(我认为是版本8)进行了更新,该工具应自动检测适用于Python 2.7的Microsoft Visual C
++编译器。但是,我仍然遇到相同的错误。


我也尝试使用

easy_install scrapy

我得到这个错误

error: Setup script exited with error: Microsoft Visual C++ 10.0 is required (Un

能够找到vcvarsall.bat)。


我的注册表中也有以下内容

HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\9.0\Setup\VC\ProductDir
HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\12.0\Setup\VC\ProductDir

阅读 268

收藏
2020-12-20

共1个答案

小编典典

我尝试了所有建议,并找到了自己的简单解决方案。

问题是在外部环境(如外部环境)中编写的代码C需要编译器。寻找自己的VS环境,即VS 2008。

目前,我的机器运行VS 2012并面临Unable to find vcvarsall.bat。我研究了要安装以找到VS版本的代码。那是VS2008。我已将系统变量添加VS90COMNTOOLS为变量名,并赋予的值VS120COMNTOOLS

您可以在下面找到我的分步解决方案:

  1. 右键单击我的电脑。
  2. 单击属性
  3. 高级系统设置
  4. 环境变量
  5. 添加新的系统变量
  6. 输入VS90COMNTOOLS作为变量名
  7. 将当前版本的值输入新变量。
  8. 关闭所有视窗

现在打开一个新会话并 pip install your-package

2020-12-20