C++ 二进制文件给出错误 FATAL: kernel too old

Nic*_*ick 5 gcc linux-kernel

我在 Archlinux 上编译了一个 C++ 静态链接程序并尝试在 CentOS 7 上运行它,我得到了

FATAL: kernel too old
Run Code Online (Sandbox Code Playgroud)

如果我使用 clang 也会发生同样的情况。

然而,在同一个 Archlinux 上,我有 CentOS 7 的容器。它使用相同的内核,但旧版本的 gcc。

如果我这样做,我不会收到这样的消息,所以问题似乎不在于内核。

有没有办法用一些选项编译它,以便它可以在 CentOS 7 上运行?

版本:

__Archlinux__: (binary say: kernel too old)

    Kernel 5.14.16
    gcc version 11.1.0
    clang version 13.0.0

__Archlinux container__: (binary works)

    Kernel 5.14.16
    gcc version 7.3.1

__CentOS 7__

    kernel 3.10.0
Run Code Online (Sandbox Code Playgroud)