GCC致命错误:stdio.h:没有这样的文件或目录

GCC致命错误:stdio.h:没有这样的文件或目录,c,gcc,stdio,C,Gcc,Stdio,我正在尝试用GCC4.9在OSX10.9上用C编译一个程序。出于某种原因,我在编译时遇到以下错误: gcc:致命错误:stdio.h:没有这样的文件或目录 然后我尝试了一个简单的Hello World程序: 包括 int main argc,常量字符*argv[] { 打印Hello,世界!; 返回0; } 同样,在运行gcc-o~/hello~/hello.c时,我得到了相同的错误。我正在使用gcc的一个实验版本,但似乎不太可能有一个版本在导入stdio时产生错误。是什么导致了这个问题,如何解

我正在尝试用GCC4.9在OSX10.9上用C编译一个程序。出于某种原因,我在编译时遇到以下错误:

gcc:致命错误:stdio.h:没有这样的文件或目录 然后我尝试了一个简单的Hello World程序:

包括 int main argc,常量字符*argv[] { 打印Hello,世界!; 返回0; }
同样,在运行gcc-o~/hello~/hello.c时,我得到了相同的错误。我正在使用gcc的一个实验版本,但似乎不太可能有一个版本在导入stdio时产生错误。是什么导致了这个问题,如何解决呢?

我也有同样的问题。我从应用商店安装了XCode:developmenttools,它为我解决了这个问题

我认为这个链接将有助于:

亚恩·拉明的建议值得称赞。我认为有一个更好的解决方案与链接,但这是简单和快速的

祝你好运

MacOSX 我在Macports编译器中也遇到了这个问题。以前版本的Xcode允许您通过Xcode/Preferences安装命令行工具,但是Xcode 5没有在GUI中提供命令行工具选项,所以我认为它现在已经自动包含了。尝试运行以下命令:

xcode-select --install
Ubuntu 照此

高山Linux 照此

ubuntu用户:

sudo apt get安装libc6 dev

特别是在安装gem时遇到问题的ruby开发人员,在他们的VMs上安装json-v“1.8.2”

macosmojave 被接受的答案不再有效。运行命令xcode select-install时,它会告诉您使用软件更新来安装更新

这是更新后的方法:

打开一个终端,然后:

cd /Library/Developer/CommandLineTools/Packages/
open macOS_SDK_headers_for_macOS_10.14.pkg
这将打开一个安装向导

更新日期:2019年12月
在升级到Mojave 10.15.1之后,似乎使用xcode select-install可以正常工作。

我知道我的情况很少见,但我还是会将其添加到这里,以供稍后排除故障的人使用。 我的Makefile中有一个Linux内核模块目标,我试图将我的用户空间程序与没有stdio的内核模块一起编译。
将其作为单独的目标解决了问题。

通过执行echo include | gcc-v-x c-并检查搜索路径,您可以看到gcc在哪里查找头文件。非常有用的命令!看起来stdio.h不在GCC的任何搜索路径中,Mavericks不再有base/usr/include。您需要从XCode OS 10.9 SDK.BTW将其链接到位,int main的第一个参数是int而不是int*argc。@user2615799位于sudo ln-s/Applications/XCode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.SDK/usr/include如果您使用的是XCode 6 beta 5,此命令可能会失败。在这种情况下,您需要执行sudoxcode选择-s/Applications/xcode.app。完成后,使用sudoxcode选择-s/Applications/Xcode6-Beta5.app.Wow切换回。2017年仍在使用Xcode 8.0和Sierra。阿尔卑斯指南对基于阿尔卑斯发行版的Docker图像非常有用,可以作为windows用户的建议吗?对于安装CLTs后仍有问题的macOS用户,我在Windows上遇到了此问题。谢谢这个库还解决了一些其他问题。最近,我在尝试为petabyet.com运行一个使用gcc的基准测试时遇到了它。在alpine linux上,我需要apk add libc DEVAR您指的是普通的Xcode吗?或者有没有一个叫做XCode:developmenttools的特殊版本?因为我在应用商店里只看到普通的Xcode。诚然,从发布此答案到现在已经过去了4年。升级到Xcode 10.2时,重新安装标头也会起作用。当我打开macOS_SDK_headers_for_macOS_10.14.pkg时,安装程序会给我一个可怕的警告:此软件包与此版本的macOS不兼容,可能无法安装。我有莫哈韦。@SteveSiegel你在运行什么Mac OS版本?我升级到10.15.1,不再需要做这种变通方法。更新我的答案以反映这一点。更新到Mojave 10.15.1是不正确的@SteveSiegel不推荐使用该包装。应该使用SDKROOT。
apk add libc-dev
cd /Library/Developer/CommandLineTools/Packages/
open macOS_SDK_headers_for_macOS_10.14.pkg