明明已安装CMake,为何pip安装dlib时提示未安装?
解决pip install dlib时提示找不到cmake的问题(系统已安装CMake)
问题原因
执行pip install dlib时,dlib的构建脚本会优先调用Python环境中通过pip安装的cmake包,而非系统全局的CMake。如果这个Python版本的cmake包损坏或安装不完整,就会触发ModuleNotFoundError: No module named 'cmake'错误,即便系统里已经安装了正常可用的CMake。
解决步骤
卸载损坏的Python版cmake包
在PowerShell中执行:pip uninstall -y cmake确保系统CMake在PATH中优先级更高
- 执行
$env:PATH查看环境变量顺序,确认系统CMake的安装目录(通常是C:\Program Files\CMake\bin)排在Python的Scripts目录(比如C:\Users\<你的用户名>\AppData\Local\Programs\Python\PythonXX\Scripts)之前。 - 如果顺序不对,打开系统环境变量设置,将CMake的bin目录移到Python Scripts目录上方,保存后重启PowerShell生效。
- 执行
重新安装dlib
直接执行:pip install dlib
备选方案(强制使用系统CMake)
如果调整PATH后仍有问题,可以在安装时直接指定系统CMake路径:
$env:CMAKE_PREFIX_PATH = "C:\Program Files\CMake" pip install dlib
(请根据你的实际CMake安装路径替换上述路径)
内容的提问来源于stack exchange,提问作者nicomp
相关产品推荐
相关产品推荐

