在更新到Mojave之前,我正在编译C程序。我使用的是gcc 7.3的旧版本,该版本是按照here的说明安装的。
然后我更新到Mojave并尝试编译gcc main.c之后的简单程序:
#include <stdio.h>
int main(){
printf("Hello World\n");
return 0;}
这会导致以下错误:
/usr/local/lib/gcc/x86_64-apple-darwin17.5.0/7.3.0/include-fixed/stdio.h:78:10: fatal error: _stdio.h: No such file or directory
#include <_stdio.h>
^~~~~~~~~~
compilation terminated.
如果删除了include,它将使用printf的隐式声明警告进行编译,但仍将编译并正常运行,并打印Hello World。有谁知道这个问题以及我该如何解决?
答案 0 :(得分:3)
我想出了解决方法。我去了
/Library/Developer/CommandLineTools/Packages/
然后打开并安装macOS_SDK_headers_for_macOS_10.14.pkg。