看了一圈网上的,觉得知乎里面的答案是最好的。我觉得大部分问题在于python版本和vs版本不配对的问题,
例如 python2.7会默认配对msvs2008
python3.4 和3.5是默认配对msvs2010,所以我电脑上python3.4+vs2012,一直报错error: Unable to find vcvarsall.bat。
解决方法:
1.修 改MSVCCompiler函数 ,函数路径在 /Lib\distutils\_msvccompiler.py 一般是在python的这个目录下;
2.然后用记事本打开这个MSVCCompiler这个文件
3.将文件中这行vc_env = query_vcvarsall(VERSION, plat_spec) 修改为
vc_env = query_vcvarsall(11.0, plat_spec) (msvs对应的版本号)
版本对应如下图(从知乎上截图的)
重新运行即可。