pip安装numpy及所有模块失败:Preparing metadata报错求助
报错详情
执行安装命令:
pip install numpy
得到以下错误输出:
Collecting numpy Using cached numpy-1.26.4.tar.gz (15.8 MB) Installing build dependencies ... done Getting requirements to build wheel ... done Installing backend dependencies ... done Preparing metadata (pyproject.toml) ... error error: subprocess-exited-with-error × Preparing metadata (pyproject.toml) 执行失败。 │ 退出码: 1 ╰─> [21行输出] + C:\Users\Ya Zahra\AppData\Local\Programs\Python\Python313\python.exe C:\Users\Ya Zahra\AppData\Local\Temp\pip-install-9k0yru47\numpy_aa35ee8d6f314c8383668c5ac8a97aef\vendored-meson\meson\meson.py setup C:\Users\Ya Zahra\AppData\Local\Temp\pip-install-9k0yru47\numpy_aa35ee8d6f314c8383668c5ac8a97aef C:\Users\Ya Zahra\AppData\Local\Temp\pip-install-9k0yru47\numpy_aa35ee8d6f314c8383668c5ac8a97aef.mesonpy-0_r_213r -Dbuildtype=release -Db_ndebug=if-release -Db_vscrt=md --native-file=C:\Users\Ya Zahra\AppData\Local\Temp\pip-install-9k0yru47\numpy_aa35ee8d6f314c8383668c5ac8a97aef.mesonpy-0_r_213r\meson-python-native-file.ini The Meson build system Version: 1.2.99 Source dir: C:\Users\Ya Zahra\AppData\Local\Temp\pip-install-9k0yru47\numpy_aa35ee8d6f314c8383668c5ac8a97aef Build dir: C:\Users\Ya Zahra\AppData\Local\Temp\pip-install-9k0yru47\numpy_aa35ee8d6f314c8383668c5ac8a97aef.mesonpy-0_r_213r Build type: native build Project name: NumPy Project version: 1.26.4 警告:激活VS环境失败:无法找到C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe ..\meson.build:1:0: ERROR: Unknown compiler(s): [['icl'], ['cl'], ['cc'], ['gcc'], ['clang'], ['clang-cl'], ['pgcc']] 遇到以下异常: 执行`icl ""`返回"[WinError 2] 系统找不到指定文件" 执行`cl /?`返回"[WinError 2] 系统找不到指定文件" 执行`cc --version`返回"[WinError 2] 系统找不到指定文件" 执行`gcc --version`返回"[WinError 2] 系统找不到指定文件" 执行`clang --version`返回"[WinError 2] 系统找不到指定文件" 执行`clang-cl /?`返回"[WinError 2] 系统找不到指定文件" 执行`pgcc --version`返回"[WinError 2] 系统找不到指定文件" 完整日志可查看:C:\Users\Ya Zahra\AppData\Local\Temp\pip-install-9k0yru47\numpy_aa35ee8d6f314c8383668c5ac8a97aef\.mesonpy-0_r_213r\meson-logs\meson-log.txt [输出结束] 注意:该错误源自子进程,大概率与pip无关。 error: metadata-generation-failed × 生成包元数据时遇到错误。 ╰─> 请查看上述输出。
错误原因
- 系统未安装任何C/C++编译工具链,numpy等依赖底层编译的包无法完成源码构建
- Windows下默认依赖Visual Studio的MSVC编译器,报错提示找不到
vswhere.exe,说明Visual Studio或其Build Tools未正确安装,无法激活编译环境
解决方案
方案1:安装Visual Studio Build Tools(推荐)
- 下载Visual Studio Build Tools安装包,运行后选择**“桌面开发用C++”**工作负载
- 确保勾选以下核心组件:
- MSVC vXXX生成工具(对应你的系统架构,如x64)
- Windows SDK(匹配当前系统版本)
- 安装完成后重启终端,重新执行
pip install numpy
方案2:强制使用预编译二进制包
- 跳过源码编译,直接安装PyPI上的预编译wheel包,执行:
pip install numpy --only-binary :all: - 该命令会让pip优先下载已经编译好的二进制版本,无需本地编译工具
方案3:安装MinGW-w64作为替代编译器
- 下载MinGW-w64安装程序,选择支持64位的版本(如x86_64-posix-seh)
- 安装时确保勾选
gcc、g++等编译工具 - 将MinGW安装目录下的
bin文件夹(例如C:\mingw64\bin)添加到系统环境变量PATH中 - 重启终端后执行
pip install numpy
内容的提问来源于stack exchange,提问作者dvd.shd
相关产品推荐
相关产品推荐

