如何在 Ubuntu 18 中启动在 Ubuntu 20 中内置的程序?

How to launch in Ubuntu 18 a program built in Ubuntu 20?

我在 Ubuntu 20.04 中使用 gcc 10 构建我的 C++ 程序,然后在 Ubuntu 18.04 中 运行 它,但不幸的是得到如下错误:

/opt/aspen/my: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /opt/my/myRenderer.so)
/opt/my/my: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /opt/my/libpython3.8.so.1.0)
/opt/my/my: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by /opt/my/libpython3.8.so.1.0)

是否可以通过在 Ubuntu 18.04 中安装一些额外的软件包来解决这个问题?

有一些方法
1。在您当前的机器上安装 gcc,例如从源代码编译它。它不保证 - 因为您可能需要更高版本的 glibc
2。升级你的整台机器
3 在第一台机器 (Ubuntu 20) 上将其编译成 静态二进制文件 文件而不是动态文件,然后你可以 运行它几乎无处不在。

注意。您可能只想在您的机器上编译 glibc - 这是可能的,但由于许多其他库依赖于 glibc,因此可能会遇到 运行ning CMD 或其他程序的错误。最安全的是选项 3 static build.