Windows 10系统下Python安装Dlib出现CMake相关报错如何解决?
dlib Windows环境安装失败解决方案
免编译预编译包安装方案(优先选择,成功率最高)
- 第一步:确认当前使用的Python版本与系统位数,命令行执行
python --version查看版本号,执行python -c "import platform;print(platform.architecture()[0])"查看位数(绝大多数Windows设备为64位) - 第二步:下载与你Python版本、系统位数匹配的dlib预编译.whl包,Python3.8对应版本号含cp38,Python3.6对应版本号含cp36,64位系统匹配包名含win_amd64
- 第三步:命令行cd到whl包所在目录,执行
pip install 下载的whl包文件名完成安装,例如pip install dlib-19.22.99-cp38-cp38-win_amd64.whl
源码编译安装解决方案
如果必须使用源码编译版本,按以下步骤操作:
- 不要使用普通cmd或PowerShell执行安装命令,必须打开Visual Studio 2019的x64 Native Tools Command Prompt,确保编译链正确加载
- 先清空本地pip缓存,执行
pip cache purge - 提前安装编译依赖:
pip install numpy cmake setuptools wheel - 执行安装命令:
pip install dlib --verbose,如果安装失败,查看verbose输出的开头部分的编译日志,定位具体缺失的依赖或组件 - conda环境下建议先创建独立干净的虚拟环境再安装,避免包冲突:
conda create -n dlib_test python=3.8 conda activate dlib_test pip install numpy cmake pip install dlib
常见问题排查
- 检查系统环境变量,删除多余的旧版本cmake、Visual Studio路径,仅保留当前使用的cmake 3.21、Visual Studio 2019的相关路径
- 确认Visual Studio 2019已安装「MSVC v142 - VS 2019 C++ x64/x86生成工具」与对应版本的Windows 10 SDK,二者为编译必须组件,缺失需在Visual Studio Installer中补装
- conda环境下避免pip与conda命令混用安装编译类库,优先在虚拟环境中使用同一种包管理工具
内容的提问来源于stack exchange,提问作者sophie
相关产品推荐
相关产品推荐

