在无GPU环境安装仅CPU版dlib遇pip参数错误及CUDA问题求助
解决仅CPU版dlib安装及CUDA驱动报错问题
问题根源
- 你使用的
--install-option参数已被新版本pip(21.0及以上)移除,导致命令执行报错。 - 常规安装的dlib默认启用CUDA支持,即便更新了CUDA runtime,若显卡驱动版本不匹配,仍会触发
cudaGetDevice相关错误。
解决方法
方法1:通过环境变量指定编译选项(推荐)
在Windows命令行(CMD)中按以下步骤操作:
- 激活你的虚拟环境:
C:\Users\Dan\Desktop\venv_py38\Scripts\activate.bat - 设置禁用CUDA的环境变量:
set DLIB_USE_CUDA=0 - 安装dlib:
pip install --no-cache-dir dlib
如果使用PowerShell,环境变量设置改为:
$env:DLIB_USE_CUDA=0
方法2:从源码编译安装
若方法1无效,可手动编译纯CPU版dlib:
- 克隆dlib源码仓库:
git clone https://github.com/davisking/dlib.git cd dlib - 设置环境变量禁用CUDA:
set DLIB_USE_CUDA=0 - 编译并安装(启用AVX指令加速CPU运算):
python setup.py install --yes USE_AVX_INSTRUCTIONS
方法3:使用预编译的纯CPU版轮子
若不想自行编译,可下载对应Python版本的纯CPU版dlib预编译轮子(文件名不含cuda字样),然后本地安装:
- 找到适配Python 3.8的Windows轮子文件(例如
dlib-19.24.1-cp38-cp38-win_amd64.whl) - 执行安装命令:
pip install dlib-19.24.1-cp38-cp38-win_amd64.whl
验证安装
安装完成后,运行以下代码确认dlib已禁用CUDA:
import dlib print(dlib.DLIB_USE_CUDA) # 输出False则表示成功禁用CUDA
内容的提问来源于stack exchange,提问作者zvith
相关产品推荐
相关产品推荐

