【发布时间】:2020-01-14 09:49:51
【问题描述】:
在具有旧版本 gcc (4.4.7) 的 linux 服务器上,我从源代码构建 gcc 7.4.0 并将其安装在 home 的目录中。
现在我不确定如何使用它。该目录包括一些子目录,一个名为“include”。在其中有一个名为“c++”的文件夹。它包括另一个名为“7.4.0”的文件夹。但是 C 头文件在哪里?安装程序是否将它们安装在不同的位置?编译 C 程序时应该提供哪个地址和-I 选项?
很遗憾,我已经没有 gcc 源目录了。
【问题讨论】:
-
检查
/usr/local/include否则天堂禁止你改写/usr/include... -
@DavidC.Rankin,不应该
make install将它们安装在prefix选项指定的目录中吗? -
大多数 C 头文件不是 gcc 的一部分,而是平台 C 库(通常是 glibc)的一部分。如果您正确安装了 gcc,您通常应该不使用任何
-I参数。 -
您通常不需要安装新版本的 C 库。您的平台提供的版本完全足够,gcc itef 正在使用它。如果需要,您可以安装 glibc,但这可能会很棘手。
-
是的,他就是这么说的,我应该听懂的。
glibc是打包头文件和库的第二部分。请注意,一些发行版将其分解为多个包。您将需要与 gcc 7.4 兼容的版本。我想你只需要检查是否有任何版本不兼容。 (请注意您的发行版是针对特定的 glibc 版本编译的——混合可能会导致问题)