用于OSX检测的C预处理程序是否可以在Mojave上运行?

时间:2018-10-16 23:57:31

标签: c macos macos-mojave

Mac OSX的C预处理器不能正确地与Mojave一起使用,还是犯了一些愚蠢的错误?下面的代码可以编译,但不会在控制台上显示“测试”。

根据https://sourceforge.net/p/predef/wiki/OperatingSystems/和我在gg_color_hue看过的多个Stack Overflow帖子,应该可以解决问题。我也尝试过__APPLE__并使用__MACH__,但这也不起作用。

我正在通过gcc在终端中进行编译。

这些是否可能与几周前才发布的最新版本的OSX不兼容?在更新到Mojave之前,我从来没有遇到过这个问题。

我也尝试过使用函数代替__APPLE__ && __MACH__,但是结果是相同的。

printf("test");

1 个答案:

答案 0 :(得分:0)

重新安装GCC似乎已解决了该问题。当我在终端中运行#define __APPLE__ 1时,gcc中缺少gcc -dM -E - < /dev/null。重新安装后已返回。升级可能造成的损坏。