Ubuntu Python:无法 pip install dlib - dlib 构建轮失败,机器几乎卡住
Posted
技术标签:
【中文标题】Ubuntu Python:无法 pip install dlib - dlib 构建轮失败,机器几乎卡住【英文标题】:Ubuntu Python: unable to pip install dlib - Failed building wheel for dlib and machine is almost stuck 【发布时间】:2018-06-22 11:24:57 【问题描述】:我正在尝试为我的 django python 环境安装 dlib(机器学习库)。但是,我无法安装它。有错误卡住了。
根据这个指令,这就是我所做的https://www.pyimagesearch.com/2017/03/27/how-to-install-dlib/
$ sudo apt-get install build-essential cmake
$ sudo apt-get install libgtk-3-dev
$ sudo apt-get install libboost-all-dev
$ source somedotcomenv/bin/activate <-- virtualenv
$ pip install numpy
$ pip install scipy
$ pip install scikit-image
$ pip install dlib
但是,它失败了,我认为卡住了,在最后一个阶段差不多一个小时。我不确定它是否仍在编译。
[ 82%] Building CXX object CMakeFiles/dlib_.dir/src/dlib.cpp.o
In file included from /usr/include/boost/python/detail/prefix.hpp:13:0,
from /usr/include/boost/python/args.hpp:8,
from /usr/include/boost/python.hpp:11,
from /tmp/pip-build-8xkp8e7q/dlib/tools/python/src/dlib.cpp:4:
/usr/include/boost/python/detail/wrap_python.hpp:50:23: fatal error: pyconfig.h: No such file or directory
compilation terminated.
CMakeFiles/dlib_.dir/build.make:62: recipe for target 'CMakeFiles/dlib_.dir/src/dlib.cpp.o' failed
make[2]: *** [CMakeFiles/dlib_.dir/src/dlib.cpp.o] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/dlib_.dir/all' failed
error: cmake build failed!
----------------------------------------
Failed building wheel for dlib
Running setup.py clean for dlib
Failed to build dlib
Installing collected packages: dlib
Running setup.py install for dlib ...
这里有完整的执行和错误日志https://gist.github.com/axilaris/fe58937e8ac39386e6e9816833636461
这是最后一个***进程,它卡住并不确定它是否仍在编译,但已经过了一个小时。有什么东西卡住了。即使尝试在另一个命令行上键入内容也非常慢。
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
30 root 20 0 0 0 0 S 9.2 0.0 6:21.82 kswapd0
4550 deploy 20 0 95372 980 0 S 0.3 0.1 0:01.59 sshd
4566 deploy 20 0 184852 14756 684 D 0.3 1.5 0:04.70 gunicorn
4934 deploy 20 0 256084 15712 28 D 0.3 1.5 0:10.05 python3
5646 deploy 20 0 757604 567016 0 D 0.3 55.9 0:29.41 cc1plus
5770 postgres 20 0 294548 4808 2344 D 0.3 0.5 0:00.23 postgres
5773 postgres 20 0 294384 4648 2244 D 0.3 0.5 0:00.17 postgres
9531 root 20 0 280224 8360 0 S 0.3 0.8 1:06.10 snapd
我正在使用 AWS ubuntu-xenial-16.04-amd64-server-20171026.1 (ami-da05a4a0)
【问题讨论】:
【参考方案1】:尝试在此拉取请求 https://github.com/davisking/dlib/pull/1040 中使用 dlib 的版本。它消除了对 boost 的依赖,因此应该可以解决您的问题。
【讨论】:
谢谢。对不起(我是菜鸟),我如何获得这个版本?我要克隆最新的github.com/davisking/dlib.git 并运行> python setup.py install 谷歌“git克隆分支”。它会告诉你输入git clone -b pybind11 https://github.com/supervacuus/dlib.git
谢谢。我遵循了这个指示gist.github.com/piscisaureus/3342247。基本上是克隆和 git checkout pr/1040。我认为它仍在编译,但已经在最后一点停留了 15 分钟。 gist.github.com/axilaris/d2d5e28848a85e87f6a48898a8f97d35
类似于这个sourceforge.net/p/dclib/discussion/442518/thread/12152368。现在超过30分钟。顶部显示此imgur.com/a/OJjmO。是内存吗? aws 免费层 RAM 不够?
好的,它在更改 AWS EC2 而不是 t2.2xlarge 后工作。我认为它是 32GB 内存。【参考方案2】:
在 ubuntu20.04 dlib 19.22.0 上安装 dlib
git clone https://github.com/Universe-ML21/script_install_dlib.git
sudo chmod +x script_install_dlib/auto_dlib.sh
bash script_install_dlib/auto_dlib.sh
https://***.com/a/67294391/14309748
【讨论】:
【参考方案3】:这对我有用。
pip 安装 cmake sudo pip install dlib
【讨论】:
以上是关于Ubuntu Python:无法 pip install dlib - dlib 构建轮失败,机器几乎卡住的主要内容,如果未能解决你的问题,请参考以下文章
无法在 Python3、Ubuntu14.04 中使用 pip 安装 NumPy
Ubuntu Python:无法 pip install dlib - dlib 构建轮失败,机器几乎卡住
如何在 Ubuntu 18 上为 python 3.7 安装 pip?