ibrosa 0.7.0 在 pip 安装时自动卸载了你之前装好的 numba、llvmlite、numpy、scipy 等包,并且又装回了不兼容的新版本
2025-06-10 16:35:33
ibrosa 0.7.0 在 pip 安装时自动卸载了你之前装好的 numba、llvmlite、numpy、scipy 等包,并且又装回了不兼容的新版本
到的问题是librosa 0.7.0 在 pip 安装时自动卸载了你之前装好的 numba、llvmlite、numpy、scipy 等包,并且又装回了不兼容的新版本(比如 numba 0.60.0、llvmlite 0.43.0),这正是“老项目在 Windows+pip 下安装永远不对齐依赖”的经典死循环。
现在的状态总结
- pip 装 librosa 0.7.0 时,会强制拉最新版 numba/llvmlite(这是 pip 依赖地狱的锅),导致又回到“numba.decorators 不存在”的报错。
- 只要你
pip install librosa==0.7.0
,pip 就会把 numba/llvmlite 自动升级到新版本,无法用 pip 保持老版本共存。
2025年解决 Windows pip 依赖地狱的唯一可行方案
最稳妥做法——用 Conda 环境管理
你用的是 pip,pip 无法强制依赖“降级不升级”。只有 conda 能保证依赖树100%一致。
步骤如下:
-
安装 miniconda(如果未安装)
官方下载页面 -
新建一个独立环境
bash
复制
conda create -n wav2lip_env python=3.9 conda activate wav2lip_env
-
用 conda 安装 Wav2Lip 依赖(确保老版本)
bash
复制
conda install numpy=1.19.5 scipy=1.7.3 numba=0.48 llvmlite=0.31.0
-
用 pip 装 librosa 0.7.0,conda 不会自动升级 numba/llvmlite
bash
复制
pip install librosa==0.7.0
-
继续安装其它依赖
bash
复制
pip install torch==1.10.2 torchvision==0.11.3 tqdm==4.45.0 opencv-python==4.5.5.64 opencv-contrib-python==4.5.5.64
-
验证
bash
复制
python -c "import librosa; print(librosa.__version__)"
如果你坚持只用 pip
那么pip 安装 librosa 0.7.0 时永远会“自动升级” numba/llvmlite,pip 无法解决依赖地狱,你遇到的问题是 pip 的根本机制决定的。
退而求其次的 pip 方案(能运行不报错就行,不保证100%兼容)
- 先装 librosa 0.7.0(让它升级依赖)
- 再强制降级 llvmlite/numba 到兼容版本(重复多次,pip list 检查)
- 每次装其他包都可能被再次升级,依赖关系会反复被破坏
这不是长久之计,建议还是用 conda。
结论
- 你当前遇到的循环卸载/升级,就是 pip 依赖地狱,pip 解决不了。
- 用 conda 新建环境,先 conda 装老 numba/llvmlite,再 pip 装 librosa,100% 无冲突!
- 不要在系统 Python 或 mingw64 下用 pip 装老包,永远绕不出来。
发表评论: