如何推断 GCC 交叉构建的正确目标?

如何推断 GCC 交叉构建的正确目标?

我有一台 32 位 x86 机器,Debian 已启动并运行并具有此属性

  • uname -r3.2.0-4-486并且
  • uname -mi586

在这种情况下,我必须选择正确的前缀HOSTTARGET前缀,以便我能够在另一台机器上交叉编译 gcc 以进行此 Debian 安装。

我应该选择i486还是i586?我已经尝试过i686,但显然它根本不起作用( gcc 编译并运行,它是 gcc/g++ 编译器在使用前缀的机器上找不到标头i686)。

答案1

我相信你不需要交叉编译。您可以简单地使用-march来指示cpu-type.看http://gcc.gnu.org/onlinedocs/gcc-4.4.2/gcc/i386-and-x86_002d64-Options.html获取完整列表。在你的情况下,-march=i586应该有效。

答案2

如果您需要与旧的 486 兼容或需要 686 的最佳性能,您不应该推断,您必须了解并选择您需要的。

丢失的标头只是一个不同的问题。

相关内容