5.2. Exemplo: Construindo um programa C usando um Makefile


Construa uma amostra do programa C usando um Makefile seguindo as etapas deste exemplo.

Procedimento

  1. Crie um diretório hellomake e mude para este diretório:

    $ mkdir hellomake
    $ cd hellomake
  2. Crie um arquivo hello.c com o seguinte conteúdo:

    #include <stdio.h>
    
    int main(int argc, char *argv[]) {
      printf("Hello, World!\n");
      return 0;
    }
  3. Crie um arquivo Makefile com o seguinte conteúdo:

    CC=gcc
    CFLAGS=-c -Wall
    SOURCE=hello.c
    OBJ=$(SOURCE:.c=.o)
    EXE=hello
    
    all: $(SOURCE) $(EXE)
    
    $(EXE): $(OBJ)
            $(CC) $(OBJ) -o $@
    
    %.o: %.c
            $(CC) $(CFLAGS) $< -o $@
    
    clean:
            rm -rf $(OBJ) $(EXE)
    Cuidado

    As linhas de receitas Makefile devem começar com o caractere de tabulação! Ao copiar o texto acima da documentação, o processo de cortar e colar pode colar espaços em vez de abas. Se isso acontecer, corrija o problema manualmente.

  4. Rodar make:

    $ make
    gcc -c -Wall hello.c -o hello.o
    gcc hello.o -o hello

    Isto cria um arquivo executável hello.

  5. Execute o arquivo executável hello:

    $ ./hello
    Hello, World!
  6. Execute o alvo Makefile clean para remover os arquivos criados:

    $ make clean
    rm -rf hello.o hello
Red Hat logoGithubRedditYoutubeTwitter

Aprender

Experimente, compre e venda

Comunidades

Sobre a documentação da Red Hat

Ajudamos os usuários da Red Hat a inovar e atingir seus objetivos com nossos produtos e serviços com conteúdo em que podem confiar.

Tornando o open source mais inclusivo

A Red Hat está comprometida em substituir a linguagem problemática em nosso código, documentação e propriedades da web. Para mais detalhes veja oBlog da Red Hat.

Sobre a Red Hat

Fornecemos soluções robustas que facilitam o trabalho das empresas em plataformas e ambientes, desde o data center principal até a borda da rede.

© 2024 Red Hat, Inc.