Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Uma Introducão a ferramentas de desenvolvimento

Uma Introducão a ferramentas de desenvolvimento

Algumas explicações sobre ferramentas de desenvolvimento de C/C++ e algumas coisas básicas sobre.
Preprocessador, link, compilação e ferramentas em C/C++.

Psycho Mantys

April 02, 2008
Tweet

More Decks by Psycho Mantys

Other Decks in Programming

Transcript

  1. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Uma Introdu¸ c˜ ao aos Compiladores Diogo Dutra Albuquerque Baltazar Tavares Vanderlei Laborat´ orio de Computa¸ c˜ ao Cient´ ıfica e Visualiza¸ c˜ ao - LCCV/UFAL 23 de Outubro de 2008
  2. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  3. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  4. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans O que ´ e um compilador? ‘‘Um compilador ´ e um programa(ou grupo de programas) que aceitando como entrada um arquivo escrito em uma linguagem (o c´ odigo fonte) gera um programa em outra linguagem(o c´ odigo objeto).”
  5. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  6. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  7. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) Pr´ e-Processador Primeira etapa do processo de compila¸ c˜ ao em c++.
  8. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) Pr´ e-Processador Primeira etapa do processo de compila¸ c˜ ao em c++. Respons´ avel de resolver as diretivas de pr´ e-compila¸ c˜ ao.
  9. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) Pr´ e-Processador Primeira etapa do processo de compila¸ c˜ ao em c++. Respons´ avel de resolver as diretivas de pr´ e-compila¸ c˜ ao. No final dessa etapa, ser´ a gerado um c´ odigo sem nenhum “#” do usu´ ario.
  10. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) Exemplo com o g++ pre.cpp: Arquivo com c´ odigo a ser pr´ e-processado #include ”my. h” int main ( int argc , char ∗ argv [ ] ){ sample ( ) ; return 0; }
  11. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) Exemplo com o g++ pre.cpp: Arquivo com c´ odigo a ser pr´ e-processado #include ”my. h” int main ( int argc , char ∗ argv [ ] ){ sample ( ) ; return 0; } my.h: Arquivo inclu´ ıdo em pre.cpp int sample ( ) ;
  12. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) Resultado do pr´ e-processamento com o g++ g++ −E samples / pre . cpp −DMSG=’”Hal , open the pod doors .” # 1 ” samples / pre . cpp” # 1 ”<b u i l t −in >” # 1 ”<command−l i n e >” # 1 ” samples / pre . cpp” # 1 ” samples /my. h” 1 i n t sample ( ) ; # 2 ” samples / pre . cpp” 2 i n t main ( i n t argc , char ∗ argv [ ] ){ sample ( ) ; r e t u r n 0; }
  13. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) Flags uteis de Pr´ e-Processamento Como flags mais ´ uteis do pr´ e-processamento temos: -I : indica ao compilador o diret´ orio das bibliotecas.
  14. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) Flags uteis de Pr´ e-Processamento Como flags mais ´ uteis do pr´ e-processamento temos: -I : indica ao compilador o diret´ orio das bibliotecas. -D : Equivalente a um #define
  15. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) Exemplo com o g++ define.cpp: Arquivo com c´ odigo a ser pr´ e-processado int main (){ char ∗c=MSG; return 0; }
  16. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) Resultado do pr´ e-processamento com o g++ g++ −E samples / d e f i n e . cpp −DMSG=’”Hal , open the pod door # 1 ” samples / d e f i n e . cpp” # 1 ”<b u i l t −in >” # 1 ”<command−l i n e >” # 1 ” samples / d e f i n e . cpp” i n t main (){ char ∗c=”Hal , open the pod doors . ” ; r e t u r n 0; }
  17. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  18. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) O que ´ e feito na etapa de compila¸ c˜ ao? O processo de compila¸ c˜ ao em si(d˜ a˜ aa).
  19. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) O que ´ e feito na etapa de compila¸ c˜ ao? O processo de compila¸ c˜ ao em si(d˜ a˜ aa). A checagem de erros sint´ aticos ´ e feito nessa etapa.
  20. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) O que ´ e feito na etapa de compila¸ c˜ ao? O processo de compila¸ c˜ ao em si(d˜ a˜ aa). A checagem de erros sint´ aticos ´ e feito nessa etapa. A gera¸ c˜ ao de c´ odigo bin´ ario de acordo com a maquina especificada.
  21. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) Esquema de compila¸ c˜ ao
  22. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  23. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) O que ´ e a etapa de linkagem? Nessa etapa ser˜ ao resolvidas as dependˆ encias com bibliotecas externas.
  24. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) O que ´ e a etapa de linkagem? Nessa etapa ser˜ ao resolvidas as dependˆ encias com bibliotecas externas. Ser´ a feito a liga¸ c˜ ao entre os arquivos do programa.
  25. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) O que ´ e a etapa de linkagem? Nessa etapa ser˜ ao resolvidas as dependˆ encias com bibliotecas externas. Ser´ a feito a liga¸ c˜ ao entre os arquivos do programa. Tamb´ em ser´ a resolvido as bibliotecas est´ aticas.
  26. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) O que ´ e a etapa de linkagem? Nessa etapa ser˜ ao resolvidas as dependˆ encias com bibliotecas externas. Ser´ a feito a liga¸ c˜ ao entre os arquivos do programa. Tamb´ em ser´ a resolvido as bibliotecas est´ aticas. E a etapa em que vocˆ e mais deve ter conhecimento global do projeto.
  27. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) Esquema de linkagem
  28. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  29. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  30. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Os n´ ıveis de otimiza¸ c˜ ao On: O que ´ e os n´ ıveis de otimiza¸ c˜ ao -O[n]? Os n´ ıveis de otimiza¸ c˜ ao -O[n] s˜ ao chaves para habilitar flags de otimiza¸ c˜ ao em diversos compiladores.
  31. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Os n´ ıveis de otimiza¸ c˜ ao On: O que ´ e os n´ ıveis de otimiza¸ c˜ ao -O[n]? Os n´ ıveis de otimiza¸ c˜ ao -O[n] s˜ ao chaves para habilitar flags de otimiza¸ c˜ ao em diversos compiladores. Para cada n´ ıvel diferente e melhor, um numero [n] maior.
  32. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Os n´ ıveis de otimiza¸ c˜ ao On: O que ´ e os n´ ıveis de otimiza¸ c˜ ao -O[n]? Os n´ ıveis de otimiza¸ c˜ ao -O[n] s˜ ao chaves para habilitar flags de otimiza¸ c˜ ao em diversos compiladores. Para cada n´ ıvel diferente e melhor, um numero [n] maior. Pode ir de ”1”ate ”5”, mas n˜ ao em todos os compiladores.
  33. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Os n´ ıveis de otimiza¸ c˜ ao On: O que ´ e os n´ ıveis de otimiza¸ c˜ ao -O[n]? Os n´ ıveis de otimiza¸ c˜ ao -O[n] s˜ ao chaves para habilitar flags de otimiza¸ c˜ ao em diversos compiladores. Para cada n´ ıvel diferente e melhor, um numero [n] maior. Pode ir de ”1”ate ”5”, mas n˜ ao em todos os compiladores. A ´ unica exce¸ c˜ ao ´ e o n´ ıvel ”s”: Ele otimiza o tamanho do execut´ avel.
  34. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Exemplos: g++ (Compilador da GNU): g++ -O2 main.c icc (Compilador da Intel R ): suncc (Compilador da SUN):
  35. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Exemplos: g++ (Compilador da GNU): g++ -O2 main.c icc (Compilador da Intel R ): icc -O2 main.c suncc (Compilador da SUN):
  36. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Exemplos: g++ (Compilador da GNU): g++ -O2 main.c icc (Compilador da Intel R ): icc -O2 main.c suncc (Compilador da SUN): suncc -O2 main.c
  37. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall 1a Tabela de op¸ c˜ oes ativadas pelo O[n] no g++:
  38. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall 2a Tabela de op¸ c˜ oes ativadas pelo O[n] no g++:
  39. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  40. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall -march: A flag para escolha de arquitetura. Essa flag especifica ao compilador para qual tipo de maquina deve ser gerado o execut´ avel do seu programa. Assim o programa poder ser compilado com instru¸ c˜ oes bin´ arias melhores para o tipo de maquina que ele ira rodar.
  41. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Algumas arquiteturas dispon´ ıveis para o g++: i386 (Um dos processadores mais antigos da Intel R ): g++ -march=i386 main.c i486: pentium3 (Modelo j´ a com suporte a MMX e SSE): core2 (Um dos modelos mais novos da Intel R ): athlon-4: pentium4 (Famoso pentium4):
  42. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Algumas arquiteturas dispon´ ıveis para o g++: i386 (Um dos processadores mais antigos da Intel R ): g++ -march=i386 main.c i486: g++ -march=i486 main.c pentium3 (Modelo j´ a com suporte a MMX e SSE): core2 (Um dos modelos mais novos da Intel R ): athlon-4: pentium4 (Famoso pentium4):
  43. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Algumas arquiteturas dispon´ ıveis para o g++: i386 (Um dos processadores mais antigos da Intel R ): g++ -march=i386 main.c i486: g++ -march=i486 main.c pentium3 (Modelo j´ a com suporte a MMX e SSE): g++ -march=pentium3 main.c core2 (Um dos modelos mais novos da Intel R ): athlon-4: pentium4 (Famoso pentium4):
  44. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Algumas arquiteturas dispon´ ıveis para o g++: i386 (Um dos processadores mais antigos da Intel R ): g++ -march=i386 main.c i486: g++ -march=i486 main.c pentium3 (Modelo j´ a com suporte a MMX e SSE): g++ -march=pentium3 main.c core2 (Um dos modelos mais novos da Intel R ): g++ -march=core2 main.c athlon-4: pentium4 (Famoso pentium4):
  45. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Algumas arquiteturas dispon´ ıveis para o g++: i386 (Um dos processadores mais antigos da Intel R ): g++ -march=i386 main.c i486: g++ -march=i486 main.c pentium3 (Modelo j´ a com suporte a MMX e SSE): g++ -march=pentium3 main.c core2 (Um dos modelos mais novos da Intel R ): g++ -march=core2 main.c athlon-4: g++ -march=athlon-4 main.c pentium4 (Famoso pentium4):
  46. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Algumas arquiteturas dispon´ ıveis para o g++: i386 (Um dos processadores mais antigos da Intel R ): g++ -march=i386 main.c i486: g++ -march=i486 main.c pentium3 (Modelo j´ a com suporte a MMX e SSE): g++ -march=pentium3 main.c core2 (Um dos modelos mais novos da Intel R ): g++ -march=core2 main.c athlon-4: g++ -march=athlon-4 main.c pentium4 (Famoso pentium4): g++ -march=pentium4 main.c
  47. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  48. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Para que serve as flags -m64 ou -m32 ? Essa flag especifica ao compilador para qual “arquitetura da mem´ oria” deve ser gerado o execut´ avel do seu programa. Assim o programa poder ser compilado com instru¸ c˜ oes bin´ arias melhores para o tipo de maquina que ele ira rodar e pode usar melhor os tipos que aumentam de tamanho com 64 bits. As op¸ c˜ oes dispon´ ıveis s˜ ao: -m32 ou -m64.
  49. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  50. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -On -march=ARCH -m(32 ou 64) -Wall Para que serve a flag -Wall ? Essa flag especifica ao compilador que o n´ ıvel de alarmes que ele deve passar ao usu´ ario ´ e o n´ ıvel m´ aximo. Nesse n´ ıvel o compilador no avisa de poss´ ıveis erros de l´ ogica e ate mesmo otimiza¸ c˜ oes no c´ odigo. Este ´ e uma flag muito usada e recomendada. O ideal ´ e que ela sempre seja habilitada no compilador.
  51. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -mfpmath=tipo -fopenmp 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  52. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -mfpmath=tipo -fopenmp 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  53. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -mfpmath=tipo -fopenmp Para que serve a flag -mfpmath ? Essa flag especifica ao compilador se o execut´ avel ira usar uma “unidade de pontos flutuantes” 387 ou se ele ira usar as instru¸ c˜ oes SSE para as opera¸ c˜ oes de ponto flutuante. Usar as instru¸ c˜ oes SSE ´ e mais r´ apido, mas necessita de uma arquitetura de processador que de suporte(A maioria).
  54. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -mfpmath=tipo -fopenmp 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  55. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans -mfpmath=tipo -fopenmp Como habilitar o suporte a openmp no g++? A flag -fopenmp ´ e usada para habilitar o suporte ao openmp no g++. Com essa flag vocˆ e esta apto a compilar, linkar e pr´ e-processar todo o seu c´ odigo que tiver OpenMP.
  56. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  57. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans ICC e ICPC -ip : Habilita otimiza¸ c˜ ao interprocedural, mas somente por arquivo
  58. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans ICC e ICPC -ip : Habilita otimiza¸ c˜ ao interprocedural, mas somente por arquivo -ipo : Habilita otimiza¸ c˜ ao interprocedural multi-arquivos
  59. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans ICC e ICPC -ip : Habilita otimiza¸ c˜ ao interprocedural, mas somente por arquivo -ipo : Habilita otimiza¸ c˜ ao interprocedural multi-arquivos -fast : Habilita as op¸ c˜ oes: -O3, -ipo, -static, -no-prec-div, e -xP
  60. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans ICC e ICPC -ip : Habilita otimiza¸ c˜ ao interprocedural, mas somente por arquivo -ipo : Habilita otimiza¸ c˜ ao interprocedural multi-arquivos -fast : Habilita as op¸ c˜ oes: -O3, -ipo, -static, -no-prec-div, e -xP -no-prec-div : Desabilita precis˜ ao na divis˜ ao
  61. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans ICC e ICPC -ip : Habilita otimiza¸ c˜ ao interprocedural, mas somente por arquivo -ipo : Habilita otimiza¸ c˜ ao interprocedural multi-arquivos -fast : Habilita as op¸ c˜ oes: -O3, -ipo, -static, -no-prec-div, e -xP -no-prec-div : Desabilita precis˜ ao na divis˜ ao -xP : Otimiza para arquiteturas acima do pentium4
  62. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  63. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile make
  64. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile make Programa para automa¸ c˜ ao e agiliza¸ c˜ ao de atividades
  65. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile make Programa para automa¸ c˜ ao e agiliza¸ c˜ ao de atividades Detecta quais arquivos foram alterados
  66. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile make Programa para automa¸ c˜ ao e agiliza¸ c˜ ao de atividades Detecta quais arquivos foram alterados Makefile
  67. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile make Programa para automa¸ c˜ ao e agiliza¸ c˜ ao de atividades Detecta quais arquivos foram alterados Makefile Arquivo de configura¸ c˜ ao para o programa make
  68. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile make Programa para automa¸ c˜ ao e agiliza¸ c˜ ao de atividades Detecta quais arquivos foram alterados Makefile Arquivo de configura¸ c˜ ao para o programa make Possui uma sintaxe simples
  69. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile make Programa para automa¸ c˜ ao e agiliza¸ c˜ ao de atividades Detecta quais arquivos foram alterados Makefile Arquivo de configura¸ c˜ ao para o programa make Possui uma sintaxe simples F´ acil utiliza¸ c˜ ao e manuseio
  70. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile make Programa para automa¸ c˜ ao e agiliza¸ c˜ ao de atividades Detecta quais arquivos foram alterados Makefile Arquivo de configura¸ c˜ ao para o programa make Possui uma sintaxe simples F´ acil utiliza¸ c˜ ao e manuseio Baseia-se em regras
  71. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile make Programa para automa¸ c˜ ao e agiliza¸ c˜ ao de atividades Detecta quais arquivos foram alterados Makefile Arquivo de configura¸ c˜ ao para o programa make Possui uma sintaxe simples F´ acil utiliza¸ c˜ ao e manuseio Baseia-se em regras As regras possuem comandos
  72. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile Obrigatoriamente os comandos devem ser iniciados com um TAB
  73. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile Obrigatoriamente os comandos devem ser iniciados com um TAB regra1: comando_x comando_y
  74. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile Obrigatoriamente os comandos devem ser iniciados com um TAB regra1: comando_x comando_y A primeira regra do arquivo ´ e a regra a ser executada por padr˜ ao
  75. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile Obrigatoriamente os comandos devem ser iniciados com um TAB regra1: comando_x comando_y A primeira regra do arquivo ´ e a regra a ser executada por padr˜ ao As regras podem ter dependˆ encias de outras regras ou arquivos
  76. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile Obrigatoriamente os comandos devem ser iniciados com um TAB regra1: comando_x comando_y A primeira regra do arquivo ´ e a regra a ser executada por padr˜ ao As regras podem ter dependˆ encias de outras regras ou arquivos Caso a dependˆ encia ´ e uma regra, deve seguir uma hierarquia
  77. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile Obrigatoriamente os comandos devem ser iniciados com um TAB regra1: comando_x comando_y A primeira regra do arquivo ´ e a regra a ser executada por padr˜ ao As regras podem ter dependˆ encias de outras regras ou arquivos Caso a dependˆ encia ´ e uma regra, deve seguir uma hierarquia Sempre depender de uma regra mais abaixo
  78. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile Obrigatoriamente os comandos devem ser iniciados com um TAB regra1: comando_x comando_y A primeira regra do arquivo ´ e a regra a ser executada por padr˜ ao As regras podem ter dependˆ encias de outras regras ou arquivos Caso a dependˆ encia ´ e uma regra, deve seguir uma hierarquia Sempre depender de uma regra mais abaixo regra1: regra2 comando_x comando_y regra2: comando_z
  79. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile Podem ser usadas vari´ aveis
  80. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile Podem ser usadas vari´ aveis A declara¸ c˜ ao de uma vari´ avel deve obrigatoriamente ter um valor
  81. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile Podem ser usadas vari´ aveis A declara¸ c˜ ao de uma vari´ avel deve obrigatoriamente ter um valor O acesso a uma vari´ avel deve ser feito por $(variavel)
  82. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile Podem ser usadas vari´ aveis A declara¸ c˜ ao de uma vari´ avel deve obrigatoriamente ter um valor O acesso a uma vari´ avel deve ser feito por $(variavel) COMANDO=comando_z regra1: $(COMANDO)
  83. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile Podem ser usadas vari´ aveis A declara¸ c˜ ao de uma vari´ avel deve obrigatoriamente ter um valor O acesso a uma vari´ avel deve ser feito por $(variavel) COMANDO=comando_z regra1: $(COMANDO) Podem ser declaradas vari´ aveis ao chamar o programa make
  84. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Makefile Podem ser usadas vari´ aveis A declara¸ c˜ ao de uma vari´ avel deve obrigatoriamente ter um valor O acesso a uma vari´ avel deve ser feito por $(variavel) COMANDO=comando_z regra1: $(COMANDO) Podem ser declaradas vari´ aveis ao chamar o programa make $ make COMANDO=comando_z
  85. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Exemplo simples de Makefile CXX=g++ CXXFLAGS=-O2 -pipe LDFLAGS=-L/usr/lib/hello -lhello CC=$(CXX) $(CXXFLAGS) $(LDFLAGS) all: hello hello.o main.c $(CC) main.c hello.o -o hello hello: hello.c hello.h $(CXX) -c hello.c
  86. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  87. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans IDE Integrated Development Environment - Ambiente de desenvolvimento integrado
  88. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans IDE Integrated Development Environment - Ambiente de desenvolvimento integrado Uma IDE ´ e um conjunto de v´ arias ferramentas
  89. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans IDE Integrated Development Environment - Ambiente de desenvolvimento integrado Uma IDE ´ e um conjunto de v´ arias ferramentas As ferramentas mais comuns de se encontrar em uma IDE s˜ ao: Editor de texto
  90. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans IDE Integrated Development Environment - Ambiente de desenvolvimento integrado Uma IDE ´ e um conjunto de v´ arias ferramentas As ferramentas mais comuns de se encontrar em uma IDE s˜ ao: Editor de texto Compilador
  91. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans IDE Integrated Development Environment - Ambiente de desenvolvimento integrado Uma IDE ´ e um conjunto de v´ arias ferramentas As ferramentas mais comuns de se encontrar em uma IDE s˜ ao: Editor de texto Compilador Depurador
  92. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans IDE Integrated Development Environment - Ambiente de desenvolvimento integrado Uma IDE ´ e um conjunto de v´ arias ferramentas As ferramentas mais comuns de se encontrar em uma IDE s˜ ao: Editor de texto Compilador Depurador Normalmente as IDEs tˆ em dois modos de compila¸ c˜ ao, Debug e Release
  93. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans IDE Integrated Development Environment - Ambiente de desenvolvimento integrado Uma IDE ´ e um conjunto de v´ arias ferramentas As ferramentas mais comuns de se encontrar em uma IDE s˜ ao: Editor de texto Compilador Depurador Normalmente as IDEs tˆ em dois modos de compila¸ c˜ ao, Debug e Release Existem v´ arias IDEs. Alguns exemplos s˜ ao Netbeans, Eclipse, Geany, Anjuta, CodeBlocks...
  94. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans
  95. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans
  96. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans
  97. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans 1 O que ´ e um compilador? 2 Como Funciona um Compilador C++? Pr´ e-Processador Compila¸ c˜ ao Link Edi¸ c˜ ao(Linkagem) 3 Flags de Compila¸ c˜ ao gen´ ericas -On -march=ARCH -m(32 ou 64) -Wall 4 Flags de Compila¸ c˜ ao do g++ -mfpmath=tipo -fopenmp 5 Flags de Compila¸ c˜ ao do icpc 6 Makefile 7 IDE 8 Netbeans
  98. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Netbeans IDE de f´ acil usabilidade
  99. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Netbeans IDE de f´ acil usabilidade Multiplataforma
  100. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Netbeans IDE de f´ acil usabilidade Multiplataforma Suporte a plugins
  101. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Netbeans IDE de f´ acil usabilidade Multiplataforma Suporte a plugins Vastamente utilizada pelo mundo
  102. O que ´ e um compilador? Como Funciona um Compilador

    C++? Flags de Compila¸ c˜ ao gen´ ericas Flags de Compila¸ c˜ ao do g++ Flags de Compila¸ c˜ ao do icpc Makefile IDE Netbeans Netbeans IDE de f´ acil usabilidade Multiplataforma Suporte a plugins Vastamente utilizada pelo mundo Recomendado o uso pelo Curso de C++ LCCV