问题概述
目的:想要在Windows 10 64bit 上安装face_recongnition 0.2.0
已有条件:Anaconda2-4.1.1-Windows-x86_64.exe
出现的问题:直接pip install face_recongnition,会报错,提示没有cmake
查资料
安装face_recongnition的必要条件是:配置好Dlib
安装Dlib的必要条件是配置好boost和cmake
已进行步骤
1.采用http://blog.csdn.net/insanity666/article/details/72235275 的步骤安装dlib
2.已安装的cmake为最新版cmake-3.9.0-rc6-win64-x64
3.已安装的boost为最新版boost_1_64_0
在进行操作的时候,发现boost_1_64_0的解压目录不存在stage这个文件夹,所以直接设置环境变量为C:\Users\lyc\Desktop\boost_1_64_0\libs,不知道对不对。
4.下载的dlib版本为dlib-19.4,在进行dlib安装的时候,报以下错误:
CMake Error at C:/Users/lyc/Desktop/dlib-19.4/dlib/cmake_utils/add_python_module:116 (message):
Boost python library not found.
Call Stack (most recent call first):
CMakeLists.txt:6 (include)
-- Configuring incomplete, errors occurred!
See also "C:/Users/lyc/Desktop/dlib-19.4/tools/python/build/CMakeFiles/CMakeOutput.log".
error: cmake configuration failed!
5.又试了一下pip install face_recongnition,发现报的错误一样,原因可能还是boost没配置好
如何解决?
再查查boost 1.64如何配置
如果不行试一试boost 1.63版本可不可行
20170719夜 记录
20170722 新增
解决思路
为了解决以上问题,下载了boost 1.63版本,采用http://blog.csdn.net/insanity666/article/details/72235275 的步骤安装,但是发现该教程安装boost部分是参考另一个教程,而且在配置环境变量的时候少了最后两个步骤。配置过程中发现boost 1.63编译之后生成了stage文件夹,而1.64版本则没有,很奇怪,可能新版本改了吧,或者配置方法不一样。配置完成后,又试了试pip install face_recognition,发现还是不行
这次由于环境变量设对了,报的错已不是上面的那个,仔细看了看所报的错误,说是没发现boost,如果已安装boost,那么有可能是用于编译的visual studio版本太老,不支持c++ 11,建议用vs2015以上的版本进行编译。我用的是vs2012,索性下了一个vs2015,安装了一个晚上,早上起来,重新安装了一下cmake,然后重新安装并配置了一下boost,再次尝试pip install face_recognition,安装成功,开心。
C:\Users\lyc>pip install face_recognition
Collecting face_recognition
Using cached face_recognition-0.2.0-py2.py3-none-any.whl
Requirement already satisfied: face-recognition-models in e:\anaconda2\lib\site-packages (from face_recognition)
Requirement already satisfied: Click>=6.0 in e:\anaconda2\lib\site-packages (from face_recognition)
Requirement already satisfied: Pillow in e:\anaconda2\lib\site-packages (from face_recognition)
Requirement already satisfied: numpy in e:\anaconda2\lib\site-packages (from face_recognition)
Requirement already satisfied: scipy>=0.17.0 in e:\anaconda2\lib\site-packages (from face_recognition)
Collecting dlib>=19.3.0 (from face_recognition)
Using cached dlib-19.4.0.tar.gz
Building wheels for collected packages: dlib
Running setup.py bdist_wheel for dlib ... done
Stored in directory: C:\Users\lyc\AppData\Local\pip\Cache\wheels\9f\a3\5a\8ab6d5b6384f703392281e40e34d860435fe2fea6cc4d8947e
Successfully built dlib
Installing collected packages: dlib, face-recognition
Successfully installed dlib-19.4.0 face-recognition-0.2.0
总结
安装face_recongnition的步骤
1.安装VS2015
2.安装cmake-3.9.0-rc6-win64-x64,直接下载的msi,双击安装即可
3.安装boost_1_63_0,步骤:
- 运行 bootstrap.bat. 生成三个文件,其中包括b2
-- bootstrap.bat - 运行b2
-- b2 install - 利用b2编译库文件
-- b2 -a --with-python address-model=64 toolset=msvc runtime-link=static
注意自己的机器是64位还是32位, address-model=64/32 - 设置变量
-- set BOOST_ROOT=C:\local\boost_1_57_0
-- set BOOST_LIBRARYDIR=C:\local\boost_1_57_0\stage\lib
将这两个变量设置到到Path变量中: %BOOST_ROOT%;%BOOST_LIBRARYDIR%
4.安装dlib-19.4,直接pip install dlib,或者下载压缩包自行安装,或者跳过本步骤,因为pip install face_recognition会自动下载并安装dlib
- pip install face_recognition,大功告成
版本信息:
- cmake cmake-3.9.0-rc6-win64-x64
- boost 1.63.0
- dlib 19.4
- face_recognition 0.2.0