安装argostranslate==1.7.5后CentOS导入模块报错:No module named '_lzma'
解决CentOS下argostranslate导入时的_lzma模块缺失问题
CentOS系统中导入argostranslate出现ModuleNotFoundError: No module named '_lzma',大概率是系统缺少lzma相关依赖,或Python编译时未包含该模块支持。以下是针对性解决步骤:
安装系统级lzma依赖
执行命令:sudo yum install -y xz-devel python-backports-lzma
xz-devel是lzma的底层依赖库,python-backports-lzma提供Python层面的兼容支持。若使用源码编译的Python,重新编译安装
- 进入对应版本的Python源码目录(若已删除需重新下载)
- 执行配置命令:
./configure --enable-optimizations - 编译并安装:
make && sudo make install
此步骤确保Python编译时能识别到xz-devel,从而原生支持_lzma模块。
无需重新编译的补装方案
- 安装backports.lzma包:
pip install backports.lzma - 找到Python安装目录下的
lzma.py(如/usr/local/lib/python3.9/lzma.py),修改开头的导入代码为:
让Python在找不到原生_lzma时自动 fallback 到backports版本。try: from _lzma import * from _lzma import _encode_filter_properties, _decode_filter_properties except ImportError: from backports.lzma import * from backports.lzma import _encode_filter_properties, _decode_filter_properties
- 安装backports.lzma包:
验证修复
执行命令:python -c "import argostranslate.translate; print('导入成功')"
无报错则问题解决。
内容的提问来源于stack exchange,提问作者aimltools.com
相关产品推荐
相关产品推荐

