天天看点

dlib安装_win10+dlib+python3.7+minGW编译安装

最近想用一下dlib库,发现在win10上如果没有visual studio的话安装python版本有点麻烦,现在记录一下使用minGW自己编译安装自己想要的python版本。

先说明我的操作系统是

win10 64位

python版本是3.7.6

cmake版本是3.16.4

minGW版本是8.1

。dlib版本为当前的最新版

19.19

注意了:dlib从19.9版本开始不再需要提前安装boost了,所以别问我为啥不要装boost。 先分享一下我编译好的dlib的.whl文件,提取码:i81x

dlib.whl​pan.baidu.com

注意事项

  1. 路径不要有中文和空格
  2. 记得编译前先删除build文件夹

ubuntu安装dlib的python版本

ubuntu安装python版本的dlib很简单,直接pip安装即可

pip install dlib
           

如果提示缺少什么包的话,直接先安装缺少的包再继续pip安装即可,一般没什么问题。

windows编译安装

python3.7如果直接使用pip安装:

pip install dlib
           

会报错如下:

dlib安装_win10+dlib+python3.7+minGW编译安装

在网上查了很多解决办法,发现他们的解决办法要么是安装visual studio让visual studio来成为默认编译器,要么是去https://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml下载别人已经编译好的版本来安装。但是不巧我当时去看别人编译好的版本时并没有Python.7的版本,然后大家都是把Python版本退回到3.6或3.5。

这些个解决办法太笨了!!!我就是要用minGW来编译我的python3.7版本!! 安装minGW。 安装cmake。

minGW和cmake的安装可以参考我的另一篇文章

小糊糊:Win10+Clion+OpenCV+编译源码​zhuanlan.zhihu.com

dlib安装_win10+dlib+python3.7+minGW编译安装

去github上下载最新版的dlib:https://github.com/davisking/dlib,我下载的是当前最新版dlib19.19。下载完成后解压缩:

dlib安装_win10+dlib+python3.7+minGW编译安装

这个时候打开setup.py文件查找问题,结合上面图片中的报错

,发现问题代码出现在149行

dlib安装_win10+dlib+python3.7+minGW编译安装
当前操作系统为windows时,cmake默认是使用Visual Studio作为C/C++编译器,而我们使用的是minGW的gcc和g++,minGW是没有'-A', 'X64'这些参数的,而且mingw的多线程编译应该是'-j'才对。因此将其修改如下,注释掉'-A', 'X64',改为4线程编译。
if 
           
另外NMake Makefile是visual studio的生成器,我们使用的是mingw,所以我们应该使用mingw的生成器。 删除当前目录下的build文件夹(否则会使用前面的错误编译缓存),

在当前dlib目录打开cmd,输入以下命令运行python版本dlib编译安装:其中

-G "MinGW Makefiles"表示使用mingw的生成器

bdist_wheel表示编译生成.whl文件。
python setup.py -G "MinGW Makefiles" bdist_wheel
           

dlib开始顺利编译安装:

dlib安装_win10+dlib+python3.7+minGW编译安装
dlib安装_win10+dlib+python3.7+minGW编译安装
编译过程会自动检查你的计算机是否有CUDA和显卡,然后会自动选择是否安装CUDA版本的dlib,注意在windows平台上的mingw编译器是不支持CUDA的,所以即使你有显卡和CUDA它也不会安装CUDA版本的dlib,目前windows平台上只有visual studio是支持CUDA的。

等待大概10分钟编译完成:

dlib安装_win10+dlib+python3.7+minGW编译安装

这时在我们的当前目录下多生成了三个文件夹:

dlib安装_win10+dlib+python3.7+minGW编译安装

其中dist文件夹中就是我们非常熟悉的

dlib-19.19.99-cp37-cp37m-win_amd64.whl

文件了

dlib安装_win10+dlib+python3.7+minGW编译安装

当前目录打开cmd,输入以下命令安装:

pip install dlib-19.19.99-cp37-cp37m-win_amd64.whl
           

测试安装:

dlib安装_win10+dlib+python3.7+minGW编译安装

成功导入了dlib包!!

如果这篇文章帮到你的话,别忘了点赞哦!!!