• 【Python】安装python包时遇到"error: Microsoft Visual C++ 9.0 is required"的简答


    简答

    在Windows下用pip安装Scrapy报如下错误,

    error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat). Get it from http://aka.ms/vcpython27

    打开http://aka.ms/vcpython27会跳转到http://www.microsoft.com/en-us/download/confirmation.aspx?id=44266

    将安装包(VCForPython27.msi, 83Mb)下载回来安装即可解决问题

    Microsoft Visual C++ Compiler for Python 2.7

    更合理的解决办法:

    Python通过pip或者源码来安装某些模块时,这些模块包含有c/c++源码,安装过程会调用本地的编译器编译这些代码。在Windows平台下我安装时候的错误消息是“error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat). Get it from http://aka.ms/vcpython27” 可以看出错误是由于没有找到该vc版本,对应的是vs2008,当然一种解决方法是安装该版本,但我已经安装了vs2015,所以我就需要修改下默认的这种配置。

    解决方案

    方法一:

    • 首先确定自己安装vs的版本号,可以通过查看注册表,在HKLMSoftwareWow6432NodeMicrosoftVisualStudio下,如图 
      这里写图片描述

      会有多个数字卡头的子项,只有安装的会有对应的InstallDir项,可以看出我安装的vs版本是14.0;

    • 打开 “python安装目录/Lib/distutilsmsvc9compiler.py”文件,找到find_vcvarsall函数,在该函数开头添加 
      version =上面的版本号, 即添加内容为 “VERSION = 14.0”, 这样就可以使用了

    def find_vcvarsall(version):
        """Find the vcvarsall.bat file
    
        At first it tries to find the productdir of VS 2008 in the registry. If
        that fails it falls back to the VS90COMNTOOLS env var.
        """
        version = 14.0            ##添加这行
        vsbase = VS_BASE % version
        ... ... 
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    方法二: 
    这种方法更简单,在环境变量中添加项 VS90COMNTOOLS ,值为 “VS安装路径Common7Tools”, 如图 
    这里写图片描述

    重新打开命令行程序就可以使用了。

  • 相关阅读:
    Taobao File System
    poj 1860 (Bellman_Ford判断正环)
    IOS研究院之打开照相机与本地相册选择图片
    mysql中timestamp,datetime,int类型的区别与优劣
    数学之路(3)-机器学习(3)-机器学习算法-贝叶斯定理(3)
    POJ 3740 DLX
    HDU4738【杭州网赛、判桥】
    umdh工具使用
    计算机组成与设计(八)—— 单周期处理器
    计算机组成与设计(七)—— 除法器
  • 原文地址:https://www.cnblogs.com/yanglang/p/7239078.html
Copyright © 2020-2023  润新知