You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

MacOS High Sierra 10.13.3下Python lxml库安装失败求助

解决MacOS High Sierra 10.13.3安装lxml失败的问题

嘿,我之前在MacOS High Sierra上装lxml时也碰到过完全一样的状况——不管是PyCharm里直接装还是用pip3 install lxml都卡在编译环节报错,本质原因是lxml源码编译需要依赖系统里的libxml2libxslt库,而MacOS默认没装全这些编译依赖,下面给你几个亲测有效的解决办法:

方法1:先安装Xcode命令行工具

编译lxml需要用到编译器,MacOS的Xcode命令行工具包含了这些必备工具:

  • 打开终端,运行:
    xcode-select --install
    
  • 按照弹窗提示完成安装,过程可能需要几分钟。

方法2:用Homebrew安装依赖库后再装lxml

如果还没装Homebrew,先在终端执行安装命令:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

然后安装lxml的编译依赖:

brew install libxml2 libxslt

最后设置环境变量让pip找到这些库,再安装lxml:

LDFLAGS="-L/usr/local/opt/libxml2/lib -L/usr/local/opt/libxslt/lib" CPPFLAGS="-I/usr/local/opt/libxml2/include -I/usr/local/opt/libxslt/include" pip3 install lxml

方法3:直接安装预编译的wheel包(不用编译,最省心)

如果不想折腾编译环境,可以直接装预编译好的二进制包:

  • 先安装wheel工具:
    pip3 install wheel
    
  • 强制pip使用预编译包安装lxml:
    pip3 install --only-binary :all: lxml
    

方法4:升级pip和setuptools后重试

有时候旧版本的pip或setuptools也会导致编译失败,先升级它们:

pip3 install --upgrade pip setuptools

然后再执行pip3 install lxml试试。

这些方法里,方法3通常是最快解决问题的,如果你不想折腾依赖就优先用它;方法2适合需要源码编译或者后续还要用相关库的场景。

内容的提问来源于stack exchange,提问作者Kamil Saitov

火山引擎 最新活动