Windows10+VS2022下pip安装glpk库失败求助
Windows10+VS2022下pip安装glpk库编译失败(找不到glpk.h)的解决方法
问题描述
在Windows10搭配Visual Studio2022环境中,使用pip install glpk时触发编译错误,核心问题是编译阶段找不到glpk.h头文件,导致cl.exe执行失败(退出码2)。已尝试设置环境变量、运行Build_WinGLPK.bat、安装VS Build Tools,均未解决。
报错日志
Collecting glpk Using cached glpk-0.4.7.tar.gz (161 kB) Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Building wheels for collected packages: glpk Building wheel for glpk (pyproject.toml) ... error error: subprocess-exited-with-error × Building wheel for glpk (pyproject.toml) 运行失败。 │ 退出代码: 1 ╰─> [15行输出] WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section' running bdist_wheel running build running build_ext building 'glpk' extension creating build creating build\temp.win-amd64-cpython-38 creating build\temp.win-amd64-cpython-38\Release creating build\temp.win-amd64-cpython-38\Release\src "C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.38.33130\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DVERSION_NUMBER=\"\\\"0.4.7\\\"\" -IC:\Users\Usuario\AppData\Local\Programs\Python\Python38\include -IC:\Users\Usuario\AppData\Local\Programs\Python\Python38\Include "-IC:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.38.33130\include" "-IC:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.38.33130\ATLMFC\include" "-IC:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" /Tcsrc\2to3.c /Fobuild\temp.win-amd64-cpython-38\Release\src\2to3.obj 2to3.c "C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.38.33130\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DVERSION_NUMBER=\"\\\"0.4.7\\\"\" -IC:\Users\Usuario\AppData\Local\Programs\Python\Python38\include -IC:\Users\Usuario\AppData\Local\Programs\Python\Python38\Include "-IC:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.38.33130\include" "-IC:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.38.33130\ATLMFC\include" "-IC:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" /Tcsrc\bar.c /Fobuild\temp.win-amd64-cpython-38\Release\src\bar.obj bar.c C:\Users\Usuario\AppData\Local\Temp\pip-install-xq3sgfl_\glpk_043a1a1afc3a47829afe531f4144f1f0\src\lp.h(24): 致命错误 C1083: 无法打开包含文件: 'glpk.h': 没有这样的文件或目录 error: command 'C:\\Program Files\\Microsoft Visual Studio\\2022\\Professional\\VC\\Tools\\MSVC\\14.38.33130\\bin\\HostX86\\x64\\cl.exe' 执行失败,退出码 2 [输出结束] note: 此错误来自子进程,并非pip本身问题。 ERROR: Failed building wheel for glpk Failed to build glpk ERROR: 无法为glpk构建wheel,这是安装基于pyproject.toml的项目所必需的
解决步骤
1. 手动安装GLPK二进制库
pip编译glpk需要依赖系统已安装的GLPK原生库,先手动部署:
- 下载对应x64版本的GLPK预编译包,解压到
C:\GLPK(路径固定,避免空格或特殊字符) - 确认解压后目录结构:
C:\GLPK\include下有glpk.h,C:\GLPK\lib下有glpk.lib
2. 加载VS编译环境并配置变量
不要用普通CMD,必须打开x64 Native Tools Command Prompt for VS 2022(开始菜单搜索即可找到),然后执行:
set GLPK_INCLUDE_DIR=C:\GLPK\include set GLPK_LIB_DIR=C:\GLPK\lib
3. 重新执行pip安装
在同一个命令行窗口中运行:
pip install glpk
4. 备选:直接用预编译wheel包
如果还是编译失败,跳过编译步骤,直接安装第三方预编译的wheel:
- 确认你的Python版本(比如3.8)和系统位数(x64)
- 下载对应版本的
.whl文件,执行pip install 你的wheel文件名.whl
内容的提问来源于stack exchange,提问作者Norberto Tissera
相关产品推荐
相关产品推荐

