python27(32位)安装模块报错“error: Unable to find vcvarsall.bat”
1)首先,下载一个Microsoft Visual C++ Compiler for Python 2.7的补丁,下载地址在这里:
http://www.microsoft.com/en-us/download/details.aspx?id=44266
2) 然后下载安装VS2008(对应VER9.0),如果电脑上安装的是VS2010(对应VER10.0),
可以在VS命令行下执行:SET VS90COMNTOOLS=%VS100COMNTOOLS%
如果你安装的是 2012 版(对应VER11.0), SET VS90COMNTOOLS=%VS110COMNTOOLS%
如果你安装的是 2013版(对应VER12.0), SET VS90COMNTOOLS=%VS120COMNTOOLS%
或用以下方法也一样可以解决:
3) “unable to find vcvarsall.bat”这句话出在msvc9compiler.py中
再研究这个文件发现问题所在了:
它是在注册表中寻找到vs的目录,再去在vs目录下找vcvarsall.bat。
但是问题就出在python32里面默认是vc9.0也就是vs2008所以它在注册表里面找不到键值返回None
productdir = Reg.get_value(r"%s/Setup/VC" % vsbase,
"productdir")
vsbase值为:Software/Microsoft/VisualStudio/9.0
具体修改代码如下:
msvc9compiler.py中
def find_vcvarsall(version) 用于查找vcvarsall.bat version就是版本号,实际上是9.0
vc_env = query_vcvarsall(VERSION, plat_spec)
VERSION = get_build_version() 因为python32自己是由vc9.0构建的所以VERSION是9.0
修改MSVCCompiler函数:
vc_env = query_vcvarsall(VERSION, plat_spec)
为:
vc_env = query_vcvarsall(12.0, plat_spec)
不过还有这句话:
if VERSION < 8.0:
raise DistutilsPlatformError("VC %0.1f is not supported by this module" % VERSION)
看来,python3.2中的distutils只支持vc8.0以上,即vs2005以上的编译器。
4)之后安装还是报错:“ error: command 'mt.exe' failed with exit status 31”
编辑Python27\Lib\distutils\msvc9compiler.py,查找ld_args.append('/MANIFESTFILE:' + temp_manifest)一行,在其后添加一行,内容为ld_args.append('/MANIFEST')
5)之后安装就成功了!
python27(32位)安装模块报错“error: Unable to find vcvarsall.bat”的更多相关文章
- 在windows下安装lxml 报错error: Unable to find vcvarsall.bat
刚开始安装 ,我是使用命令pip install lxml直接进行安装,不过出错了 error: Unable to find vcvarsall.bat 解决方案: 1.首先安装wheel,pip ...
- 安装visual stdio 2017后依然报错:Unable to find vcvarsall.bat
安装visual stdio 2017后依然报错:Unable to find vcvarsall.bat 解决办法:更新setuptools 原文章:https://blog.csdn.net/wl ...
- pip install mysql-python报错1. Unable to find vcvarsall.bat 2 fatal error C1083: Cannot open include file: 'config-win.h': No such file or directory 3.error: command 'mt.exe' failed with exit statu
最近在安装mysql -python 时报错折腾了半天,通过以下方法解决: 1. pip install mysql-python报错 Unable to find vcvarsall.bat (参考 ...
- Rabbitmq安装报错 Windows下安装RabbitMQ报错Error: unable to connect to node rabbit@xxx: nodedown
1..erlang.cookie文件不一致 如果是Windows 64位系统两个文件都要修改,另外当C:\Users\用户\.erlang.cookie没有修改权限的时候 用上面这个文件覆盖下面两个目 ...
- python pip安装模块报错 "Can't connect to HTTPS URL because the SSL module is not available."
在升级python版本为3.6之后,pip安装模块报错. 报错信息如图: 原因是系统自带的openssl版本与python3的版本不匹配,所以这里只要升级openssl版本就可以解决问题. yum - ...
- python 安装模块报错 response.py", line 302, in _error_catcher
python 安装模块报错 Exception:Traceback (most recent call last): File "/usr/share/python-wheels/urlli ...
- windows上,python安装非官方包,提示error: Unable to find vcvarsall.bat
在windows机器上安装python非官方包,如果环境只是用于开发,不作任何测试的话,最好的解决办法是: 在Linux上pip安装好之后,把python根目录lib/python3.6/site-p ...
- Python error: Unable to find vcvarsall.bat
在安装一些Python模块时,大部分是cpython写的模块时会发生如下错误 error: Unable to find vcvarsall.bat.先前的一篇文章:在Windows上安装Scrapy ...
- 【转】Windows下Python快速解决error: Unable to find vcvarsall.bat
转自:http://blog.csdn.net/sad_sugar/article/details/73743863 系统配置:Windows10 x64, Visual Studio 2017, P ...
随机推荐
- AE调用GP工具的方法(转)
第一,首先要明确自己需要调用arctoolbox里面的什么工具,实现什么样的功能. 第二,按照需求看看在arctoolbox工具中是怎么实现功能的,然后确定需要的数据源. 第三,编写command或t ...
- php时间设置为本地
PHP Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to ...
- Mui框架一 快捷键+基础知识点
1.折叠面板--mAccordion 2.数字角标-mBadges <h5>有底色</h5> <span class="mui-badge">灰 ...
- javascript和jquey的自定义事件小结
“通过事件机制,可以将类设计为独立的模块,通过事件对外通信,提高了程序的开发效率.” 可以把多个关联但逻辑复杂的操作利用自定义事件的机制灵活地控制好 对象之间通过直接方法调用来交互 1)对象A直接调用 ...
- react-native执行 npm install cl.exe找不到 的问题
最近在学习react-native,昨天在尝试某个demo时,执行 npm instal, 总是遇到 cl.exe文件找不到,最开始以为Microsoft Visual C++ 2015 Redist ...
- Labview调用Python脚本
Labview程序框图如下: Python脚本如下: #!/usr/bin/env pythonimport sys #Command Line Arguements are stored in li ...
- 用java实现简易PC版2048
import java.awt.Color; import java.awt.EventQueue; import java.awt.BorderLayout; import java.awt.Flo ...
- GPS定位 测试
public class MainActivity extends Activity { private final String TAG = "BX"; private Loca ...
- JavaScript 开发的45个经典技巧
JavaScript是一个绝冠全球的编程语言,可用于Web开发.移动应用开发(PhoneGap.Appcelerator).服务器端开发(Node.js和Wakanda)等等.JavaScript还是 ...
- 分析自定义view的实现过程-实现雪花飞舞效果(转载有改动)
声明:本文源码出自实现雪花飞舞效果(有改动)主要通过这篇文来分析自定义view的实现过程. 没事时,比较喜欢上网看看一些新的东西,泡在网上的日子就是一个很不错的网站. 下面开始了,哈哈.^_^ 大家都 ...