Upload
vuongthuan
View
229
Download
0
Embed Size (px)
Citation preview
Uma breve introdução a C++ no Eclipse
Uma breve introdução a C++ no Eclipse
J.P. Kerr Catunda #USP: 2961692
IME-USP
8 de fevereiro de 2009
Uma breve introdução a C++ no Eclipse
Este documento, junto com seu fonte, é distribuido sob a licençaCreative Commons, que pode ser vista em
http://creativecommons.org/licenses/by-sa/2.5/br/
Voce pode:I Copiar, distribuir, exibir e executar a obraI Criar obras derivadas
Sob as seguintes condições:I Atribuiçao de créditoI Compartilhamento pela mesma licença.
Uma breve introdução a C++ no Eclipse
Preparando o ambienteInstalando Eclipse CDT (C/C++ Development Tool)
Criando um projetoMake
Perspectivas e suas abasC/C++ PerspectiveDebug Perspective
Compilação/DepuraçãoCompilando
Executando/Depurando um projetoAjustando perfil de Execução/Depuração
Usando o CppUnitBaixando o CppUnitConstruindo CppUnit com o EclipseIntegrando o CppUnit com seu projeto no Eclipse
Coisas úteisAtalhos de tecladoManualEOF
Uma breve introdução a C++ no Eclipse
Preparando o ambiente
Instalando Eclipse CDT (C/C++ Development Tool)
Instalando Eclipse CDT (C/C++ Development Tool)
Podemos instalar o CDT (C/C++ Development Tools) através dopróprio Eclipse usando seu menu de atualização de software. Paraisso, devemos abrir o Eclipse e seguir os menusHelp→Software Updates→Find and InstallDepois devemos escolher Search for new features toinstall, incluir Callisto Discovery Site na busca e ecolher Cand C++ DevelopementO procedimento acima para configurar o Eclipse Callisto (3.2) paradesenvolver em C++ pode ser visto nos próximos slides.
Uma breve introdução a C++ no Eclipse
Preparando o ambiente
Instalando Eclipse CDT (C/C++ Development Tool)
Instalando Eclipse CDT (C/C++ Development Tool)
Uma breve introdução a C++ no Eclipse
Preparando o ambiente
Instalando Eclipse CDT (C/C++ Development Tool)
Instalando Eclipse CDT (C/C++ Development Tool)
Uma breve introdução a C++ no Eclipse
Preparando o ambiente
Instalando Eclipse CDT (C/C++ Development Tool)
Instalando Eclipse CDT (C/C++ Development Tool)
Uma breve introdução a C++ no Eclipse
Preparando o ambiente
Instalando Eclipse CDT (C/C++ Development Tool)
Instalando Eclipse CDT (C/C++ Development Tool)
Uma breve introdução a C++ no Eclipse
Preparando o ambiente
Instalando Eclipse CDT (C/C++ Development Tool)
Instalando Eclipse CDT (C/C++ Development Tool)
Uma breve introdução a C++ no Eclipse
Preparando o ambiente
Instalando Eclipse CDT (C/C++ Development Tool)
Instalando Eclipse CDT (C/C++ Development Tool)
Uma breve introdução a C++ no Eclipse
Preparando o ambiente
Instalando Eclipse CDT (C/C++ Development Tool)
Instalando Eclipse CDT (C/C++ Development Tool)
Uma breve introdução a C++ no Eclipse
Preparando o ambiente
Instalando Eclipse CDT (C/C++ Development Tool)
Instalando Eclipse CDT (C/C++ Development Tool)
Uma breve introdução a C++ no Eclipse
Preparando o ambiente
Instalando Eclipse CDT (C/C++ Development Tool)
Instalando Eclipse CDT (C/C++ Development Tool)
Uma breve introdução a C++ no Eclipse
Criando um projeto
Criando um projeto
Ao criar um novo projeto, o Eclipse pode gerenciar a criação doprojeto ou pode permitir que você o faça a partir de um makefile.Deixar ele criar o makefile é legal por facilitar a vida.Entretanto... Nem sempre queremos que ele gerencie a criação denosso projeto. Quando é este o caso, devemos fazer o make namão. Vamos começar criando um projeto gerenciado pelo Eclipse.
Uma breve introdução a C++ no Eclipse
Criando um projeto
Managed Make
Para criarmos um projeto gerenciado pelo Eclipse, devemos seguir omenuFile→New→Project... E depois escolher o Wizard ManagedMake C++ Project
Uma breve introdução a C++ no Eclipse
Criando um projeto
Managed Make
Uma breve introdução a C++ no Eclipse
Criando um projeto
Managed Make
Uma breve introdução a C++ no Eclipse
Criando um projeto
Managed Make
Uma breve introdução a C++ no Eclipse
Criando um projeto
Managed Make
Uma breve introdução a C++ no Eclipse
Criando um projeto
Managed Make
Uma breve introdução a C++ no Eclipse
Criando um projeto
Managed Make
Uma breve introdução a C++ no Eclipse
Criando um projeto
Make
Make
Vamos agora criar um projeto utilizando nosso próprio make. Paraisso, podemos seguir o menuNew→Project...→Standard Make C++ Project
Uma breve introdução a C++ no Eclipse
Criando um projeto
Make
Make
Depois disso, devemos dar um nome para nosso projeto. Se, aoinvés de clicar em Finish, clicarmios em Next, seremos levados aajustar algumas configurações.A janela de configurações é auto explicativa, entretanto chamo aatenção para quatro de suas abas:
I Make Builder - Escolhe qual será seu construtor de projeto.I Erro Parser - Responsável por extrair erros de compilação e
mostrar pelo Eclipse.I Binary Parser - Responsável por debugar seu projeto.I C/C++ Indexer - Responsável pelo destaque de sintaxe de seu
projeto.Todos os itens acima já estão adequadamente configurados.Entretanto... É sempre bom ter opções.
Uma breve introdução a C++ no Eclipse
Criando um projeto
Make
Make
Uma breve introdução a C++ no Eclipse
Criando um projeto
Make
Make
Por último, precisamos criar nosso makefile. É importante que asopções all e clean sejam coerentes com as configuradas na abaMake Builder.Para criar o makefile, basta criar um arquivo com este nome emnosso projeto.New→FileUm make com as opções all e clean pode ser como a seguir:
Uma breve introdução a C++ no Eclipse
Criando um projeto
Make
Make
all: hello
clean:-rm *.o *.out
hello: main.og++ -g -o hello.out main.o
main.o:g++ -c -g main.cpp
Uma breve introdução a C++ no Eclipse
Perspectivas e suas abas
PerspectivasO CDT possui duas importantes perspectivas para osdesenvolvedores de C/C++. São elas:
I C/C++I Debug
Elas podem ser escolhidas através do menuWindow -> Open Perspective (Caso não apareçam aqui,escolham em Other...)ou pelos atalhos de perspectiva em cima a direita
Uma breve introdução a C++ no Eclipse
Perspectivas e suas abas
C/C++ Perspective
Navigator - Arquivos e pastas
Os arquivos e pastas de seu projeto são um espelho do que aparecena aba NAvigator. Para sua conveniência, arquivos podem serarrastados para ela. Ela é salva dentro de sua pasta de trabalho(Workspace) com o nome de seu projeto.Cuidado!
I Arquivos arrastados de outros projetos são movidos.I Arquivos arrastados do gerenciador de arquivos são copiados.
Caso você esteja num projeto gerenciado pelo Eclipse, aparecerãoas pastas Debug e Release, onde ele criará os binárioscorrespondentes.
Uma breve introdução a C++ no Eclipse
Perspectivas e suas abas
C/C++ Perspective
Navigator - Arquivos e pastas
Uma breve introdução a C++ no Eclipse
Perspectivas e suas abas
C/C++ Perspective
Outline - Navegando pelo código
Para se navegar pelo código, temos a aba Outline. Aoselecionarmos um item nela, pulamos para o ponto correspondentena aba de código. Ela se utiliza do indexer de C++ para fazer asreferências.
Uma breve introdução a C++ no Eclipse
Perspectivas e suas abas
C/C++ Perspective
Outline - Navegando pelo código
Uma breve introdução a C++ no Eclipse
Perspectivas e suas abas
C/C++ Perspective
Console - Entrada e saída
O console é, literalmente, um console. Quando você roda umprograma, sua saída será nesta janela. Se ele espera uma entrada,será por esta janela. Mensagens de compilação também serãocolocadas aqui, entretanto...
Uma breve introdução a C++ no Eclipse
Perspectivas e suas abas
C/C++ Perspective
Problems - Erros de compilação
Mensagens de erro são parseadas pelo Error Parser e colocadasaqui, facilitando muito a identificação de erros.
Uma breve introdução a C++ no Eclipse
Perspectivas e suas abas
Debug Perspective
Debug Perspective
Esta perspectiva depende fortemente do funcionamento do GNUDebuger (GDB). Isto não é um problema para usuários Linux Mac,mas pode ser problema para usuários Windows. Tenha certeza deque seu GDB está corretamente configurado e funcionando antesde tentar usar esta perspectiva.
Uma breve introdução a C++ no Eclipse
Perspectivas e suas abas
Debug Perspective
Debug - Instâncias de depuraçãoNesta aba temos as instâncias de depuração. Cuidado! Instânciasnão terminadas consomem memória e podem causar problemas!
Instâncias em execução e terminadas podem ser identificadas peloícone play verde ou stop vermelho.Instâncias podem ser excluidas selecionando-as e apertando Delete.
Uma breve introdução a C++ no Eclipse
Compilação/Depuração
Compilando
Compilando e limpando seu projetoO Eclipse por padrão compila seu projeto automaticamente antesde executar. Entretanto isto pode se tornar um problema,especialmente quando seu makefile não tomar cuidado commudanças em arquivos .h e .hpp. Opções como construir, limpar econstruir automaticamente podem ser encontradas no menuProject
Uma breve introdução a C++ no Eclipse
Compilação/Depuração
Compilando
Compilando e limpando seu projeto
Caso você esteja usando um projeto com seu próprio makefile, épossível escolher qual será seu alvo make. Caso você esteja numprojeto gerenciado pelo Eclipse, você poderá escolher entre os alvosDebug e Release. Para isto, basta clicar com o botão direito sobreseu projeto na aba Navigator e escolher Build Make Target ouActive Build Configuration respectivamente.
Uma breve introdução a C++ no Eclipse
Executando/Depurando um projeto
Ajustando perfil de Execução/Depuração
Ajustando perfil de Execução/Depuração
Para se executar/depurar um projeto é preciso ajustar osparâmetros correspondentes.
Uma breve introdução a C++ no Eclipse
Executando/Depurando um projeto
Ajustando perfil de Execução/Depuração
Ajustando perfil de Execução/Depuração
Nesta janela, na aba Main, antes de mais nada, devemos escolher oprojeto em questão. Em seguida, precisamos escolher o queexecutar de nosso projeto. Caso ainda não tenhamos compilado,teremos problemas aqui pois não teremos nenhum binário paraescolher em nosso projeto. Para resolver isto, basta fechar estajanela e compilá-lo.
Project→Build All.
Uma breve introdução a C++ no Eclipse
Executando/Depurando um projeto
Ajustando perfil de Execução/Depuração
Ajustando perfil de Execução/Depuração
Uma breve introdução a C++ no Eclipse
Executando/Depurando um projeto
Ajustando perfil de Execução/Depuração
Ajustando perfil de Execução/Depuração
Outras opções relevantes como argumentos passados para seuprojeto por linha de comando podem ser setados aqui.O procedimento para Depuração é análogo.Importante: Entradas para depuração podem ser copiadas e coladasna janela Console, vista em Perspectiva C++
Uma breve introdução a C++ no Eclipse
Usando o CppUnit
Baixando o CppUnit
Baixando o CppUnit
Baixe o pacote do CppUnit da página do SourceForgehttp://sourceforge.net/projects/cppunit/
Feito isto, descompacte ele para uma pasta conveniente, que nestaapresentação será cppunit. Dentro da pasta, rode ./configurepara criar os arquivos .h necessários.
Uma breve introdução a C++ no Eclipse
Usando o CppUnit
Baixando o CppUnit
Uma breve introdução a C++ no Eclipse
Usando o CppUnit
Baixando o CppUnit
Uma breve introdução a C++ no Eclipse
Usando o CppUnit
Construindo CppUnit com o Eclipse
Construindo o CppUnit com o Eclipse
:TODO
Uma breve introdução a C++ no Eclipse
Usando o CppUnit
Integrando o CppUnit com seu projeto no Eclipse
Integrando o CppUnit com seu projeto no Eclipse
:TODO
Uma breve introdução a C++ no Eclipse
Coisas úteis
Atalhos de teclado
Atalhos de teclado
Os seguintes atalhos podem simplificar e muito sua vida no Eclipse(Não só em C++):
I Salvar: Ctrl+SI Compilar: Ctrl+BI Auto-Completar: Ctrl+Espaço
:TODO
Uma breve introdução a C++ no Eclipse
Coisas úteis
Atalhos de teclado
Problemas comuns
I Auto-Completar não funciona: Existe um erro de sintaxeanterior ao ponto onde pretende-se usar o auto completar, e oparser se perdeu. É preciso corrigir o erro de sintaxe.
I O Play não executa seu projeto: Você não configurou umperfil de execução. Crie-o, lembrando antes de compilar seuprojeto.
:TODO
Uma breve introdução a C++ no Eclipse
Coisas úteis
Manual
Manual do Eclipse CDT
O manual do Eclipse CDT, rico em informações e com muito maisdetalhes do que esta apresentação, pode ser encotrado através domenu Help→Help Contents e escolhendo C/C++ Developmentuser Guide.Encorajo vocês fortemente darem uma olhada nele para maisinformações.
Uma breve introdução a C++ no Eclipse
Coisas úteis
EOF
EOF
Dúvidas?