Estou tentando compilar um programa em C no OS X 10.9 com GCC 4.9 (experimental). Por algum motivo, estou recebendo o seguinte erro em tempo de compilação:
gcc: fatal error: stdio.h: No such file or directory
Em seguida, tentei um programa simples Hello World:
#include <stdio.h>
int main(int argc, const char *argv[])
{
printf("Hello, world!");
return 0;
}
Novamente, ao correr gcc -o ~/hello ~/hello.c
, obtive o mesmo erro. Estou usando uma versão experimental do gcc
, mas parece improvável que haja um lançamento que gerou erros na importação stdio
. O que pode estar causando esse problema e como ele pode ser corrigido?
echo "#include <bogus.h>" | gcc -v -x c -
e examinando os caminhos de pesquisa.stdio.h
está em nenhum dos caminhos de pesquisa do GCC.int main
o primeiro parâmetro de é int e não int * argc.sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include /usr/include
Respostas:
Mac OS X
Eu tive esse problema também (encontrado por meio de compiladores Macports). As versões anteriores do Xcode permitiam a instalação de ferramentas de linha de comando por meio de xcode / Preferences, mas o xcode5 não fornece uma opção de ferramentas de linha de comando na GUI, então presumi que fosse incluída automaticamente agora. Tente executar este comando:
Ubuntu
(de acordo com esta resposta )
Alpine Linux
(de acordo com este comentário )
fonte
sudo xcode-select -s /Applications/Xcode.app
. Quando terminar, volte a usarsudo xcode-select -s /Applications/Xcode6-Beta5.app
.Mac OS Mojave
A resposta aceita não funciona mais. Ao executar o comando,
xcode-select --install
ele informa para usar "Atualização de software" para instalar atualizações.Neste link está o método atualizado:
Abra um Terminal e, em seguida:
cd /Library/Developer/CommandLineTools/Packages/ open macOS_SDK_headers_for_macOS_10.14.pkg
Isso abrirá um assistente de instalação.
Atualização 12/2019
Depois de atualizar para o Mojave 10.15.1, parece que o uso
xcode-select --install
funciona conforme o esperado .fonte
usuários do Ubuntu:
sudo apt-get install libc6-dev
especialmente desenvolvedores Ruby que têm problemas para instalar
gem install json -v '1.8.2'
em suas VMsfonte
apk add libc-dev
Eu tive o mesmo problema. Eu instalei "XCode: ferramentas de desenvolvimento" da app store e ele resolveu o problema para mim.
Acho que este link vai ajudar: https://itunes.apple.com/us/app/xcode/id497799835?mt=12&ls=1
Crédito para Yann Ramin por seus conselhos. Acho que tem uma solução melhor com links, mas foi fácil e rápido.
Boa sorte!
fonte
Sei que meu caso é raro, mas ainda vou adicioná-lo aqui para alguém que resolverá o problema mais tarde. Eu tinha um destino de módulo de kernel do Linux em meu Makefile e tentei compilar meu programa de espaço de usuário junto com o módulo de kernel que não tem stdio. Torná-lo um alvo separado resolveu o problema.
fonte