【问题标题】:/lib64/libc.so.6: version `GLIBC_2.14' not found - error from the application build using pyinstaller/lib64/libc.so.6:未找到版本“GLIBC_2.14” - 使用 pyinstaller 构建应用程序时出错
【发布时间】:2019-11-07 18:50:33
【问题描述】:
我使用pyinstaller 构建了我的python 脚本,以作为独立应用程序运行,而无需依赖python 安装或模块安装。但是现在我在我的构建应用程序的不同服务器中收到 /lib64/libc.so.6: version `GLIBC_2.14' not found (required by) 错误。
我已经阅读了互联网上的建议,我需要更新 glibc 版本,或者我应该根据服务器版本重新编译。但这在我的情况下是不可能的,这就是我使用 pyinstaller 构建独立应用程序的原因。
请提出解决方案。我需要在“n”个服务器中运行此应用程序,因此无法升级 glibc。有没有办法在构建包中添加这个库文件?
【问题讨论】:
标签:
python
linux
debian
pyinstaller
glibc
【解决方案1】:
但在我的情况下这是不可能的
是的。
您必须构建应用程序以匹配您所需的目标环境,或者您必须使您的目标环境满足您构建的应用程序的要求。
使应用程序匹配目标环境的一种方法是在匹配目标的 chroot 或 docker 容器中构建它。
这就是我使用 pyinstaller 构建独立应用程序的原因。
您不是构建“独立”应用程序。您正在构建依赖于 GLIBC-2.14 的东西,并尝试在没有该(或更新)版本的 GLIBC 的系统上运行它。
我需要在 'n' 个服务器上运行这个应用程序,所以升级 glibc 是不可能的
确实如此。您正在使用古老的 GLIBC 版本(2.14 版于 2011 年发布)运行您的应用程序。从那时起,已经发现并修复了许多 CVE。继续使用旧版本会使您的公司面临重大风险。