[c] GCC 치명적 오류 : stdio.h : 해당 파일 또는 디렉토리가 없습니다.

GCC 4.9 (실험적)를 사용하여 OS X 10.9에서 C로 프로그램을 컴파일하려고합니다. 어떤 이유로 컴파일 타임에 다음 오류가 발생합니다.

gcc: fatal error: stdio.h: No such file or directory

그런 다음 간단한 Hello World 프로그램을 시도했습니다.

#include <stdio.h>

int main(int argc, const char *argv[])
{
    printf("Hello, world!");
    return 0;
}

다시, 실행시 gcc -o ~/hello ~/hello.c동일한 오류가 발생했습니다. 의 실험용 버전을 사용하고 gcc있지만 가져올 때 오류가 발생하는 릴리스가있을 것 stdio입니다. 이 문제의 원인은 무엇이며 어떻게 해결할 수 있습니까?



답변

맥 OS X

나도이 문제가있었습니다 (Macports 컴파일러를 통해 발생했습니다). 이전 버전의 Xcode에서는 xcode / Preferences를 통해 명령 줄 도구를 설치할 수 있었지만 xcode5는 GUI에 명령 줄 도구 옵션을 제공하지 않으므로 이제 자동으로 포함되었다고 가정했습니다. 다음 명령을 실행 해보십시오.

xcode-select --install

우분투

(이 답변에 따라 )

sudo apt-get install libc6-dev

알파인 리눅스

(이 댓글에 따라 )

apk add libc-dev


답변

Mac OS Mojave

허용 된 답변은 더 이상 작동하지 않습니다. 명령을 실행할 때 xcode-select --install“소프트웨어 업데이트”를 사용하여 업데이트를 설치하라는 메시지가 표시됩니다.

링크 에는 업데이트 된 방법이 있습니다.

터미널을 열고 다음을 수행하십시오.

cd /Library/Developer/CommandLineTools/Packages/
open macOS_SDK_headers_for_macOS_10.14.pkg

설치 마법사가 열립니다.

업데이트 12/2019

Mojave 10.15.1로 업데이트 한 후 xcode-select --install의도 한대로 작동 하는 것 같습니다 .


답변

우분투 사용자 :

sudo apt-get install libc6-dev

특히 gem install json -v '1.8.2'VM에 설치하는 데 문제가있는 루비 개발자


답변

나는 같은 문제가 있었다. 앱 스토어에서 “XCode : 개발 도구”를 설치했는데 문제가 해결되었습니다.

이 링크가 도움이 될 것 같습니다 :
https://itunes.apple.com/us/app/xcode/id497799835?mt=12&ls=1

조언을 해준 Yann Ramin에게 감사드립니다. 링크가있는 더 나은 솔루션이 있다고 생각하지만 이것은 쉽고 빠릅니다.

행운을 빕니다!


답변

제 케이스가 드물다는 것을 알고 있지만 나중에 문제를 해결하는 사람을 위해 여기에 추가하겠습니다. Makefile에 Linux Kernel 모듈 대상이 있고 stdio가없는 커널 모듈과 함께 사용자 공간 프로그램을 컴파일하려고했습니다. 그것을 별도의 목표로 삼아 문제를 해결했습니다.


답변