我已经安装了Python 3.5,并且正在运行

pip install mysql-python

它给出了如下错误

错误:Microsoft Visual c++ 14.0是必需的(无法找到vcvarsall.bat)

我已经添加了以下行到我的路径

C:\Program Files\Python 3.5\Scripts\;
C:\Program Files\Python 3.5\;

C:\Windows\System32;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC;
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC

我的电脑上安装了64位的Windows 7。

什么解决方案可以减少这个错误,并通过pip正确安装模块。


当前回答

你的路径只列出了Visual Studio 11和12,它需要14,也就是Visual Studio 2015。如果你安装了它,并记得勾选Languages→c++,那么它应该可以工作。

在我的Python 3.5安装中,错误消息更有用一些,并包含了获取它的URL:

错误:需要Microsoft Visual c++ 14.0。通过“Microsoft Visual c++ Build Tools”获取:http://landinghub.visualstudio.com/visual-cpp-build-tools

新的工作环节。

根据Fire的建议,你可能还需要升级setuptools包来消除错误:

pip install --upgrade setuptools

其他回答

对于Python 3.7.4,以下一组命令可以工作: 在执行这些命令之前,您需要确认Visual Studio中已经安装了Desktop with c++ and Python。

cd "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build"
vcvarsall.bat x86_amd64
cd \
set CL=-FI"%VCINSTALLDIR%\tools\msvc\14.16.27023\include\stdint.h"
    
pip install pycrypto

我也有同样的问题。我需要一个64位版本的Python,所以我安装了3.5.0(撰写本文时最新的版本)。切换到3.4.3之后,我的所有模块安装都正常了。

Python Windows版本

你的路径只列出了Visual Studio 11和12,它需要14,也就是Visual Studio 2015。如果你安装了它,并记得勾选Languages→c++,那么它应该可以工作。

在我的Python 3.5安装中,错误消息更有用一些,并包含了获取它的URL:

错误:需要Microsoft Visual c++ 14.0。通过“Microsoft Visual c++ Build Tools”获取:http://landinghub.visualstudio.com/visual-cpp-build-tools

新的工作环节。

根据Fire的建议,你可能还需要升级setuptools包来消除错误:

pip install --upgrade setuptools

在为Django项目安装mysqlclient时,我也遇到了同样的问题。

在我的例子中,是系统架构不匹配导致了这个问题。我的系统上有Windows 7 64位版本。但是,我错误地安装了Python 3.7.2 32位版本。

所以,我重新安装Python解释器(64位)并运行命令

pip install mysqlclient

我希望这也适用于其他Python包。

二进制安装它的简单方法!

使用pip的二进制选项。例如,对于mysqlclient:

pip install --only-binary :all: mysqlclient

许多包不会为每个单独的版本创建一个构建,这迫使您的pip从源代码构建。如果您乐于使用最新的预编译二进制版本,请使用——only-binary:all:允许pip使用较旧的二进制版本。