CentOS 8安装transformers出现`GLIBC_2.29 not found`如何解决?
解决方案
方案1:使用Docker容器运行(最稳定,无系统依赖冲突)
CentOS默认GLIBC版本较低,手动升级系统GLIBC极易导致系统全局命令、服务崩溃,用容器可完全规避系统依赖问题:
- 拉取官方预编译适配的transformers镜像
docker pull huggingface/transformers:4.12.2 - 启动容器时挂载本地代码、数据目录即可直接使用,无需额外处理依赖。
方案2:在conda虚拟环境内安装高版本GLIBC(不修改系统依赖)
不需要修改系统级GLIBC,仅在当前激活的conda环境内安装适配版本:
- 先创建独立虚拟环境,避免影响现有环境
conda create -n hf_env python=3.8conda activate hf_env - 安装conda-forge源提供的高版本glibc包
conda install -c conda-forge glibc=2.31 - 再安装对应版本transformers
conda install -c conda-forge transformers=4.12.2
方案3:调整transformers版本适配现有系统
CentOS 8默认自带GLIBC 2.28,可安装4.10.3版本transformers,该版本不需要GLIBC 2.29及以上依赖:pip install transformers==4.10.3
如果必须使用4.12.2版本,可拉取transformers官方仓库v4.12.2标签的源码本地编译安装,规避预编译包的glibc版本要求。
重要提示
绝对不要尝试强制替换系统级GLIBC包,会导致大量系统基础命令、后台服务无法启动,直接损坏操作系统。
内容的提问来源于stack exchange,提问作者Lerner Zhang
相关产品推荐
相关产品推荐

