使用较新的 libc 运行程序

使用较新的 libc 运行程序

如何运行glibc 2.14在旧系统上编译的程序?

我无法更新任何内容。我可以下载最新的版本glibc并以某种方式让程序使用它而不是已安装的版本吗?

答案1

您可以下载较新的 glibc 二进制文件,将其解压到某处,然后使用以下命令运行该程序

LD_LIBRARY_PATH= /path/to/new/glibc/lib /path/to/new/glibc/lib/ld-linux.so.2 /path/to/program

运行替代的 libc 是很棘手的;您可能需要安装一堆针对此 libc 编译的其他库。使用替代 libc 运行程序的最简单方法是在某个目录下安装更新的发行版,并通过以下方式运行该目录中选定的程序chroot如何在 64 位 Debian/Ubuntu 上运行 32 位程序?解释如何在 Debian 上执行此操作;您可以按照类似的说明在另一个发行版上安装 Debian 或 Ubuntu 系统,您只需要安装 schroot 和 debootstrap 即可。 Debian jessie 和 Ubuntu trusty 都有 GLibc 2.19。

如果您没有root权限,请使用假根而不是 chroot。这有点棘手,但它应该工作得足够好,可以安装足够的库来运行典型的应用程序。

相关内容