Python 安装 dlib 出现 Failed building wheel for dlib 的解决方法
由于需要使用 Python 的 dlib 库进行人脸识别,Python 安装库的方法也很简单,使用 pip install dlib
命令即可安装 dlib 库。但是在使用 pip 安装 dlib 库的时候遇到了 Failed building wheel for dlib
错误。
出现了问题第一反应就是去谷歌搜索,也有人遇到了相同的问题,但是很遗憾没有人提供出解决方法。那只能自己分析问题原因了,安装时的错误详情如下:
Collecting dlib
Using cached https://files.pythonhosted.org/packages/05/57/e8a8caa3c89a27f80bc
78da39c423e2553f482a3705adc619176a3a24b36/dlib-19.17.0.tar.gz
Building wheels for collected packages: dlib
Running setup.py bdist_wheel for dlib ... error
Failed building wheel for dlib
Running setup.py clean for dlib
Failed cleaning build dir for dlib
Failed to build dlib
Installing collected packages: dlib
Running setup.py install for dlib ... error
Complete output from command E:\Anaconda3\python.exe -u -c "import setuptool
s, tokenize;__file__='C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\\pip-build-pf23j
kba\\dlib\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().r
eplace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --
record C:\Users\ADMINI~1\AppData\Local\Temp\pip-l_d4xbmt-record\install-record.t
xt --single-version-externally-managed --compile:
.....
突然看到了错误详情中出现了一个最多的关键字 Anaconda
,Anaconda 是一个开源的侧重数据分析的 Python 发行版本,它集成了很多必要的库,使用户可以一次性的完成安装。
突然想到是不是 Anaconda 中带的 pip 版本过低呢?就使用了 pip show pip
命令查看了 pip 版本,看到我版本为 9.0.1,然后使用 python -m pip install --upgrade pip
命令来升级 pip,升级完成后果然能成功安装了 dlib 库。
其实出现了这个问题的一个重要原因是在 Anaconda 中推荐使用 Anaconda 自带的包管理工具 conda
来安装,而不推荐使用 pip。
Anaconda 包管理
1. 安装包
conda install package_name
package_name 为包的名称
例如,要安装 numpy,在 Anaconda Prompt(终端)中输入:
conda install numpy
如果要同时安装多个包,可以输入:
conda install pandas numpy
如果想要指定包的版本,可以输入
conda install numpy=1.14
也可以指定环境安装包,可以输入以下命令安装 numpy
conda install -n python36 numpy
2. 移除包
conda remove package_name
例如,要移除 numpy,在 Anaconda Prompt(终端)中输入:
conda remove numpy
也可以指定环境移除包,可以输入以下命令移除 numpy
conda remove -n python36 numpy
3. 更新包
conda update package_name
要更新环境中的所有包,在 Anaconda Prompt(终端)中输入:
conda update --all
也可以指定环境更新包,可以输入以下命令更新 numpy
conda update -n python36 numpy
4. 列出已安装的包
要查看所有的包,在 Anaconda Prompt(终端)中输入:
conda list
也可以查询某个指定环境的已安装包
conda list -n python36
5. 查询包的信息
conda search package_name
例如,下面是查询包 numpy 的信息
conda search numpy