Compilando programas C no Ubuntu 12.04 [duplicado]

-1

Sou um principiante absoluto em escrever programas em C e estou tendo dificuldades em compilar um programa simples. Aqui está o meu código:

/* This code is a .c file that prints out the words hello, world. */

# include <stdio.h>
int main()
{
    printf("Hello World! \n");
}

Aqui está o erro que recebo ao compilar:

Ubuntu:~/Desktop/cFiles$ gcc -Wall hello.c -o hello.out -lmls 
hello.c:5:1: warning: return type defaults to ‘int’ [-Wreturn-type]
hello.c: In function ‘main’:
hello.c:7:3: warning: implicit declaration of function ‘print’ [-Wimplicit-function-declaration]
hello.c:8:1: warning: control reaches end of non-void function [-Wreturn-type] /usr/bin/ld: cannot find -lmls
collect2: ld returned 1 exit status

Não tenho certeza do que estou fazendo de errado. Alguém pode ajudar?

    
por DivDiff 19.01.2013 / 06:44

2 respostas

1

Parece que você tem um space indesejado entre # e include :

# include <stdio.h>   

Faça isso

#include <stdio.h> 

e compile.
Isso deve resolver isso para você.

    
por saji89 19.01.2013 / 06:56
1

A razão pela qual seu código não está compilando é por causa dos -lmls no final da linha. Isso está procurando por uma biblioteca chamada "mls". (Talvez você esteja codificando com libmls para Maximum Length Sequence depois?)

Compile com

Ubuntu:~/Desktop/cFiles$ gcc -Wall hello.c -o hello.out

O restante da sua saída é um aviso. A maioria deles não corresponde ao código que você forneceu. Para remover os avisos do compilador:

  1. Você já corrigiu os "padrões de tipo de retorno para 'int'" no código que você forneceu (adicionando int como o tipo de retorno principal).
  2. Você já corrigiu a "declaração implícita de função" imprimir "" adicionando o #include.
  3. Para remover o aviso "controle atinge o final da função não vazia", adicione return (0); até o final da função principal.
por popcorn_den 27.08.2013 / 17:34