erro ao compilar programa em c

Iniciado por pinguim_SP, 18 de Julho de 2008, 13:54

tópico anterior - próximo tópico

pinguim_SP

salve pessoal! tentei rodar um programinha simples para ver se o gcc ta funcionando legal, mas tive alguns problemas.
escrevi o programinha no anjuta e salvei como "programa.c" na aréa de trabalho. Com o consola fui até a área de trabalho e digitei "gcc -o teste.o programa.c"

e o seguinte apareceu...

programa.c:2:19: erro: stdio.h: Arquivo ou diretório inexistente
programa.c: Na função 'main':
programa.c:8: aviso: incopatible implicit declaration of built-in function printf'
programa.c:9: aviso: incopatible implicit declaration of built-in finction 'scanf'

Acho que o programinha não tem nada de errado:

/* programa de soma */
#include <stdio.h>

main()
{
   int inteiro1, inteiro2, soma;
   
   printf("Entre com o primeiro numero\n  ");
   scanf("%d", &inteiro1);
   printf("Entre com o segundo numero\n  ");
   scanf("%d", &inteiro2);
   soma = inteiro1 + inteiro2;
   printf("A soma e %d\n", soma);
   
   return 0;
}

Algum help?

fpissarra

Acredito que:

  sudo apt-get install build-essential libc6 libc6-dev

Resolva o problema...

sprit

#2
Tecnicamente, o que falta e a biblioteca stdio.h, e o que fpissarra falo.
No Linux existe dependência de alguns pacotes... de certa forma so instalo o compilador.
Dica:
Tecnicamente isso esta certo:
main()
mas de certa forma, porque tem uns compilador chato como Dev-C++ e assim:
int main(void)

Porque como disse(compilador chato) e que você esta retornando 0 um numero inteiro,
talvez você ainda não aprendeu função, vai entender mais para frente.

Exemplo:
#include <stdio.h>
int funcao(void)
{
  printf("O retorno da funcao.\n");
  return 123;
}
int main(void)
{
  int retorno= funcao();
  printf("retorno= %d\n", retorno);
  return 0;
}

compilar: g++ aaa.cpp -o aaa
executar: ./aaa

Dubiesto

Dev-C++ não é um compilador,mas apenas uma IDE p'ra o Mingw32 (no caso do windows) ou algum outro baseado em GCC.


pinguim_SP

Valeu galera! Primeiramente desculpe por não ter respondido antes, peguei uma virose e a coisa tava feia.
Era isso mesmo, faltava a biblioteca libc6-dev.
Obrigado pela ajuda!