Windows10下Python3安装dlib失败求助:已装cmake和boost仍报错
解决Windows环境下dlib安装失败的问题
问题重现
你遇到的错误场景如下:
Collecting dlib
Using cached dlib-19.10.0.tar.gz
Installing collected packages: dlib
Running setup.py install for dlib ... error
Complete output from command "c:\program files (x86)\python36-32\pyth...
且已经安装cmake和boost后问题仍未解决。
我之前在Windows上部署face_recognition时也踩过完全一样的坑,给你几个亲测有效的解决办法:
方案1:用预编译Wheel包跳过编译环节
源码编译dlib对Windows环境要求极高,最省心的方式是直接用现成的预编译包:
- 先确认你的Python版本(比如3.6)和系统位数(32位),找到对应版本的dlib wheel文件(比如匹配Python3.6 32位的
dlib-19.10.0-cp36-cp36m-win32.whl) - 下载后在命令提示符执行:
这种方式绕过编译步骤,成功率几乎是100%pip install 你的wheel文件名.whl
方案2:检查编译环境的完整配置
如果一定要源码编译,得确保所有依赖都配置到位:
- 确认cmake已加入系统
PATH:打开cmd输入cmake --version,能正常显示版本号才说明配置成功 - boost的环境变量要正确设置:添加
BOOST_ROOT变量指向boost的根目录,同时把boost的lib目录加入PATH - 必须安装Visual Studio的C编译工具:比如安装VS2017或更高版本的「Visual Studio Build Tools」,勾选「C build tools」组件,dlib编译必须依赖这个环境
方案3:更换Python版本/位数
你当前用的是Python3.6 32位,32位Python在编译C扩展时容易出现内存不足或兼容性问题:
- 换成64位的Python3.6,或者升级到更稳定的Python3.8/3.9版本
- 重新执行
pip install dlib,64位环境的编译兼容性会好很多
等dlib安装成功后,再执行pip install face_recognition就能顺利完成安装了。
内容的提问来源于stack exchange,提问作者Madhusudan Sharma




