5

可能重复:
检测 CPU 架构编译时

是否有 GCC 设置的定义来告诉配置 GCC 的 CPU(x86/amd64/ppc/etc)?

所以我可以像这样使用它:

#ifdef PPCARCH
  dosomething();
#endif
4

1 回答 1

5

要在源代码中在编译时检测架构,请使用预定义的宏。

根据这篇文章,它总是有一个形式的名称,_arch_或者__arch__arch是目标架构的名称。要查看确切定义的内容,请使用以下命令:

touch foo.h; cpp -dM foo.h; rm foo.h

它将打印出所有预定义的宏。

要在命令行上打印,请尝试:

gcc -dumpmachine

它将显示 GCC 的构建目标。

于 2012-09-26T20:30:51.320 回答