gcc 版本是否与内核版本相关联?

mat*_*975 6 upgrade kernel gcc

gcc 版本和内核版本之间有什么联系吗?具体来说,我是否能够将一个非常旧版本的 gcc 安装到最新的内核上。或者,我能否在非常旧的内核上构建最新版本的 gcc?对于任何版本,两者之间是否存在任何兼容性问题?

Eli*_*gan 9

您可能无法使用非常旧版本的 GCC编译新内核。

除此之外,不,GCC 版本与 Linux 内核的版本无关:

  • 您可以在具有新内核的系统上运行古老的 GCC 版本。
  • 您可以在具有非常旧内核的系统上运行新的 GCC 版本。唯一会阻止您这样做的事情是,如果您的新 GCC 版本需要一个libc无法在该内核上运行的版本。但这不是特别可能的情况。

话虽如此,您应该小心较新的 GCC 上安装较旧的GCC,因为可能需要较新的 GCC。如果您自己从源代码构建 GCC,您可以将构建配置为安装在它自己的前缀中(而不是/usr)。如果这仍然破坏构建,请确保较新的 GCC(之前存在)位于PATH环境变量中比旧 GCC(您最近安装的)更早的目录中。