paulo1205
(usa Ubuntu)
Enviado em 14/02/2013 - 07:47h
exodia escreveu:
Fiz isso mas olha o que deu:
./teste: linha 5: erro de sintaxe próximo do `token' não esperado `"Teste"'
./teste: linha 5: ` printf("Teste");'
Essa mensagem de erro indica que o que se tentou executar foi o programa fonte em C, em lugar do arquvi executável produzido como resultado da compilação. Tem certeza de que você não se confundiu com os nomes dos arquivos?
Para programas pequenos, bormalmente se cria o código fonte em um arquivo com extensão ".c" (por exemplo: "teste.c") e se compila esse arquivo de modo a produzir um arquivo executável que tem um outro nome arbitrário (por exemplo: "teste", no Unix, ou "teste.exe", no Windows). Com o GCC, se você não especificar o nome do arquivo destino, ele será, por padrão, "a.out" (ou talvez "a.exe", no Windows).
Abaixo segue um exemplo de como compilar com o GCC um programa em C contido no arquivo "teste.c", produzindo como saída um programa compilado, contido no arquivo "teste" (ou "teste.exe", se for no Windows).
gcc -Wall -Werror -O2 teste.c -o teste
("-Wall", "-Werror" e "-O2" servem para ligar opções de compilação que eu sempre recomendo que se usem, pois ajudam diagnosticar possíveis problemas com o código fonte que não são erros de sintaxe, mas podem causar surpresas no momento da execução.)
Para executar o programa compilado, no Unix você diria "./teste" (se o arquivo executável "teste" estiver no diretório corrente).