无法构建Pillow、typed-ast Wheel:旧Django项目依赖安装报错求助
解决Windows下Pillow和typed-ast编译失败问题
问题背景
运行旧项目时,执行pip install -r requirements.txt或带--use-pep517参数的命令,出现cl.exe编译失败,无法构建Pillow和typed-ast的wheel。已安装VC 2015-2022 Redistributable,虚拟环境现有包包含pip 23.3.2、typed-ast 1.5.5等。
解决方案
1. 处理typed-ast版本冲突并使用预编译包
虚拟环境中已存在的typed-ast 1.5.5与requirements.txt要求的1.4.0版本冲突,且编译旧版本易出错,直接安装预编译二进制包:
# 卸载现有版本 pip uninstall -y typed-ast # 安装指定版本的预编译包 pip install typed-ast==1.4.0 --only-binary :all:
2. 安装Pillow预编译二进制包
Pillow 9.0.0在Windows下编译需额外依赖,直接用官方预编译wheel避免编译错误:
pip install Pillow==9.0.0 --only-binary :all:
3. 检查VC Build Tools组件完整性
仅安装Redistributable不足以支持编译,需确保Visual Studio Build Tools安装以下组件:
- MSVC v142 - VS 2019 C++ x64/x86 build tools(旧版本包通常适配该工具链)
- 对应版本的Windows SDK(如Windows 10 SDK)
安装完成后重启终端,再执行pip install -r requirements.txt。
4. 降级pip适配旧包
新版本pip(23.3.2)对部分旧包兼容性可能存在问题,降级到稳定旧版本:
pip install pip==21.3.1 pip install -r requirements.txt
内容的提问来源于stack exchange,提问作者Abu RayhaN
相关产品推荐
相关产品推荐

