como compilar em linha de comando

11
Estruturas de Dados Profª. Juliana Pinheiro Campos

Upload: eric-coutinho

Post on 24-Sep-2015

5 views

Category:

Documents


2 download

DESCRIPTION

Como Compilar em Linha de Comando, C

TRANSCRIPT

  • Estruturas de Dados

    Prof. Juliana Pinheiro Campos

  • ESTRUTURAS DE DADOS

    Compilar em linha de comandoPrograma em arquivo nico

    gcc -o

    Para executar: No Windows: No Linux: ./

  • ESTRUTURAS DE DADOS

    Compilar em linha de comandoPrograma em vrios arquivos

    gcc -o

    Desvantagem: as vezes voc s precisa recompilar um arquivo e fazendo assim, est compilando tudo.

  • ESTRUTURAS DE DADOS

    Compilar em linha de comandoPrograma em vrios arquivos (outra opo)

    Compila cada arquivo .c separadamente, gerando o .o correspondente:

    gcc -c Gera o executvel a partir de todos os .o:

    gcc -o

  • ESTRUTURAS DE DADOS

    Makefilemakefile um arquivo especial contendo as

    regras necessrias para criar os arquivos executveis.

    Sua funo construir todas as dependncias descritas nesse arquivo especial.

    O arquivo makefile no pode ter nenhuma extenso.

  • ESTRUTURAS DE DADOS

    MakefileUma regra no makefile consiste de 3 partes: um

    alvo (target), uma lista de pr-requisitos e um comando como segue:

    target: pre-req-1 pre-req-2 Command

    Os comandos devem ser espaados do incio da linha por uma tabulao (tecla TAB)

  • ESTRUTURAS DE DADOS

    MakefileUse o comando make para executar o makefile.All o alvo padro e apresenta as dependncias

    necessrias se elas existem.Executar make sem argumentos inicia o alvo all.Voc pode especificar tambm o alvo que ser

    executado pelo comando make. Por exemplo, o alvo clean pode remover alguns arquivos criados (.o, .exe).

  • ESTRUTURAS DE DADOS

    Makefile Exemplo Windowsall: compilacompila: main.o aluno.o

    gcc main.o aluno.o -o progmain.o: main.c

    gcc -c main.caluno.o: Aluno.c

    gcc -c Aluno.cclean:

    del main.o Aluno.o prog.exe

  • ESTRUTURAS DE DADOS

    MakefileD o comando make duas vezes seguidas para

    ver o que acontece.Se o pr-requisito no for mais novo que o alvo

    (atualizado mais recente que o alvo), o comando no ser executado.

  • ESTRUTURAS DE DADOS

    Makefile Exemplo Linuxall: compilacompila: main.o aluno.o

    gcc main.o aluno.o -o progmain.o: main.c

    gcc -c main.caluno.o: Aluno.c

    gcc -c Aluno.cclean:

    rm main.o Aluno.o prog.exe

  • ESTRUTURAS DE DADOS

    Makefile Exemplo LinuxAll pode ser criado para fazer vrias coisas

    all: compila executacompila: main.o aluno.o

    gcc main.o aluno.o -o progmain.o: main.c

    gcc -c main.caluno.o: Aluno.c

    gcc -c Aluno.cexecuta:

    progclean:del main.o Aluno.o prog.exe

    Slide 1Slide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11