【解决过程】
1.参考了:python—解决“Unable to find vcvarsall.bat”错误和error: Unable to find vcvarsall.bat
都是让安装mingw32.
此处懒得装。
2。打算去试试,看看能否利用我已有的cygwin去实现编译。暂时放弃此复杂的方法。
3.参考上面那个:error: Unable to find vcvarsall.bat中别人的回答,去执行:
SET VS90COMNTOOLS=%VS100COMNTOOLS%
然后再去编译还是没用用。
4.参考了http://www.linuxidc.com/Linux/2011-08/39722.htm
修改C:/Python27/Lib/distutils/msvc9compiler.py文件,将
VERSION = get_build_version()
改为
VERSION = 12.0
因为我安装的为vs2013所以改为12.0,以下是对应表
vs2008-9.0,vs2010-10.0,vs2012-11.0
具体原因python里面默认的编译器是vc9.0也就是vs2008,所以它在注册表里面找不到键值返回None,
productdir = Reg.get_value(r"%s/Setup/VC" % vsbase,"productdir")
vsbase值为:Software/Microsoft/VisualStudio/9.0