灵感来自 http://blog.youkuaiyun.com/secretx/article/details/17472107,但根据那篇博客仍没有解决问题,后来在自己的调试下,终于解决。
系统配置:Windows10 x64, Visual Studio 2017, Python2.7.1
报错信息:error: Unable to find vcvarsall.bat
报错原因:在生成的时候,编译器从%PythonInstallPath%\distutils\msvc9compiler.py里的219行find_vcvarsall(version)函数中找不到vcvarsall.bat文件。
更具体的原因是,msvc9compiler.py从sys.version里提取MSVC的版本号,但是在注册表中并没有根据版本号找到vcvarsall.bat,在系统的环境变量中也没有找到版本号对应的路径。后来我根据版本号,在环境变量中添加了路径,但因为msvc9co