解决 Python 报错:Microsoft Visual C++ 14.0 or greater is required 的方法
在 Windows 系统上使用 Python 安装某些需要编译的第三方库时,可能会遇到如下错误:
error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools"
此错误是由于 Python 在安装某些依赖时,需要使用 C/C++ 编译器进行编译,而 Windows 系统默认不带有这些编译工具。因此,Python 会提示需要安装 Microsoft Visual C++ 14.0 或更高版本。
一、问题原因分析
Python 的某些第三方库,如 lxml、cryptography、numpy 等,可能包含需要编译的 C/C++ 代码。在 Windows 上,默认情况下没有可用的 C/C++ 编译器,所以需要安装 Microsoft Visual C++ 编译工具。
当尝试通过 pip 安装这些库时,如果系统中缺少相应的编译器,Python 就会报错,提示缺少 Microsoft Visual C++ 14.0 或更高版本。
二、解决方案
2.1 安装 Microsoft C++ Build Tools
最直接的解决方法是安装 Microsoft Visual C++ 编译工具。这可以通过安装 Microsoft Visual Studio 的“Build Tools”组件来实现,该组件包含所需的编译工具。
-
下载并安装 Build Tools:
- 访问 Microsoft Visual Studio 官网(此处仅作参考,不插入链接)。
- 点击 "Download Build Tools" 按钮。
- 下载并运行安装程序。
-
安装必需的组件:
- 在安装界面中,选择“C++ Build Tools”工作负载。
- 勾选“MSVC v142 - VS 2019 C++ x64/x86 build tools”(或者更新的版本,如 v143),以及“Windows 10 SDK”。
- 点击“安装”按钮开始安装。

- 等待安装完成:
安装完成后,关闭安装程序,并重新尝试使用pip安装相关的 Python 包。 - 验证安装:
重新运行pip install命令,验证问题是否解决。
2.2 安装预编译的 Python 包
如果不想安装 Visual C++ 编译器,另一种解决方案是使用预编译的 Python 包,避免在本地编译代码。很多第三方库在 PyPI 上提供了 Windows 下的预编译二进制包,使用这些包可以跳过编译步骤。
- 查找预编译包:
有些库提供了.whl格式的预编译包,可以直接下载并安装。例如,可以访问 Unofficial Windows Binaries for Python Extension Packages 网站,查找并下载所需库的.whl文件。 -
安装预编译包:
下载.whl文件后,使用pip安装:pip install package_name.whl这将直接安装预编译的二进制包,避免了本地编译。
2.3 使用 Conda 安装
如果你使用 Anaconda 作为 Python 管理工具,可以通过 Conda 安装这些第三方库。Conda 提供了预编译的库,安装时无需编译步骤,适合 Windows 用户。
-
安装库:
使用 Conda 安装相关库,例如:conda install -c conda-forge lxml - 检查安装是否成功:
安装完成后,检查是否能够正常导入库,如果一切正常,则无需进行进一步配置。
2.4 更新 pip 和 setuptools
有时,旧版本的 pip 或 setuptools 可能无法正确处理某些库的安装。更新到最新版本可能会解决部分问题。
-
更新 pip:
python -m pip install --upgrade pip -
更新 setuptools:
python -m pip install --upgrade setuptools
四、总结
当 Python 在 Windows 系统上提示 Microsoft Visual C++ 14.0 or greater is required 时,主要解决方法是安装 Microsoft C++ Build Tools 或使用预编译的 Python 包。你也可以选择通过 Conda 安装库,以避免编译步骤。此外,保持 pip 和 setuptools 的最新版本也有助于避免安装过程中出现的问题。通过这些步骤,能够有效解决 Python 安装库时的编译错误。


