Windows下pip安装Python新模块出现未能找到VC编译器的错误

问题

今天在Windows下使用pip安装multiprocessing模块的时候,最终出现如下错误

error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat)

解决

按照字面意思,应该是找不到Visual C++ 9.0的编译器,推测原因是可能该模块安装过程中需要编译。但我的计算机上安装的是Visual Studio 2015,也就是包含了Visual C++ 14.0,理论上多数情况下,新版本能够兼容旧版本的参数和命令,所以试着查了一下资料,发现pip是根据环境变量来查找Visual C++的。

然后,我就查看了一下系统的环境变量,发现有一个名叫VS140COMNTOOLS的环境变量,这应该是Visual Studio 2015设置的一个用于查找相关工具的目录的环境变量,类似的,我们添加一个名为VS90COMNTOOLS的环境变量,然后直接引用VS140COMNTOOLS的值,于是将其设置为%VS140COMNTOOLS%,如图:
设置VS90COMNTOOLS环境变量.jpg
重新使用pip安装multiprocessing模块,问题解决。

注意

修改完环境变量以后,需要重新打开命令提示符,这样命令提示符才能重新加载环境变量。

标签: none

添加新评论