python3.11环境下import dlib发生报错ImportError: DLL load failed while importing _dlib_pybind11的解决方法

        之前拿到一个比较旧的项目文件,其中有一行代码:

import dlib

        运行之后发生了报错:

Traceback (most recent call last):
  File "PATH", line 14, in <module>
    import dlib
  File "F:\Anaconda 3\envs\python3_11\Lib\site-packages\dlib\__init__.py", line 19, in <module>
    from _dlib_pybind11 import *
ImportError: DLL load failed while importing _dlib_pybind11: 找不到指定的模块。

        我给这个项目文件配置了python版本3.11的conda虚拟环境,而在给这个虚拟环境安装dlib库时是直接使用了pip命令:

pip install dlib

         结果就如文章开头所示,在尝试运行项目时发生了报错。之后尝试了各种方法,包括卸载重装dlib、安装指定版本的dlib库、去dlib官网下载老版的whl文件,均未解决问题。

        又尝试用cmake编译从dlib官网下载的最新版本dlib源文件,尝试解决一些教程所说的C++编译问题,但是由于我并不是很熟悉这方面的操作所以也没有成功。

        考虑到项目文件可能使用的python版本不同,可能是这方面的原因,于是我新创建了一个python3.8的虚拟环境,在这个环境下运行,但是这样又引出了其他的一些奇奇怪怪的bug,所以也失败了。

        后来发现是安装时的whl文件与python版本没对应上导致的问题。这样思路就比较清晰了,安装对应python版本的whl安装包即可(在文末参考链接中下载)。图中文件名中的cp311即表示对应python3.11版本。     

        在whl安装包目录下的地址栏直接输入cmd打开命令提示符。然后使用指令

pip install dlib-19.24.1-cp311-cp311-win_amd64.whl

即可完成离线安装。如果要在虚拟环境中安装的话,还需先用conda命令激活相应虚拟环境后再进行安装。至此,运行项目,报错问题解决。

参考:

python3.7-3.11版本利用whl文件快速安装dlib库(无需安装cmake)

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值