繁体   English   中英

无法通过 pip 安装 lxml

[英]Cannot install lxml via pip

我想通过 pip 安装 lxml,但它只是停止了,没有任何错误或…… 当我执行

pip install lxml -vvv

我明白了,它停在了这条线上:

gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/libxml2 -Isrc/lxml/includes -I/usr/include/python2.7 -c src/lxml/lxml.etree.c -o build/temp.linux-armv6l-2.7/src/lxml/lxml.etree.o -w

我可以离开控制台一个小时。 无事发生。 没有错误信息。 没什么。

PS:是的,

libxml2-dev libxslt-dev python-dev

都安装了。

对于所有发现相同问题的人来说:在 Raspberry Pi 上编译过程非常缓慢。 它只是没有足够的力量。 不要那样做,这不好玩。

为什么这不起作用很简单。 编译 Python 的 lxml 包只需要比你为其分配的内存多一点。 100MB 的默认交换空间加上 512MB RAM 意味着 gcc 和 kswapd 字面上相互对抗。 它可能会留在 lxml.etree.c 直到几天结束。

如何进行:

首先我们确定是什么消耗了大量内存

ps aux | head -1; ps aux | sort -rnk 4 | head -5

并暂时终止相应的恶魔和进程。 之后,我们将交换文件扩展到 2GB。

sudo dphys-swapfile swapoff

关闭交换。 然后编辑/etc/dphys-swapfile并修改变量CONF_SWAPSIZE

CONF_SWAPSIZE = 2048

dphys-swapfile setup

这将创建和初始化文件。

sudo dphys-swapfile swapon

再次打开交换。


我需要这个 Home Assistant,因为它需要 Python 3.8 而这不在包提要中。

在我的树莓派零上

pip3 install lxml

花了大约 70 分钟。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM