Lab 01 Introduzione a Codelite

Documenti analoghi
PER UTILIZZARE LCC IN LAB

Lab 01 Introduzione a Codelite

COSTRUZIONE DI UN APPLICAZIONE

COMPILAZIONE DI UN APPLICAZIONE. 1) Compilare il file (o i file se più d uno) che contengono il testo del programma. compilatore

Introduzione a Visual Studio 2005

Debugger. Marco Alberti Programmazione e Laboratorio, A.A

Fondamenti di Informatica AA 2016/2017

STRUTTURA DI UN PROGRAMMA

Università di Ferrara Facoltà di Ingegneria. Esercitazioni di FONDAMENTI DI INFORMATICA MODULO B

NOTE SULL USO DI ECLIPSE per la compilazione di programmi c

Fondamenti di Informatica T-1 CdS Ingegneria Informatica. Introduzione agli ambienti di sviluppo MS Visual Studio 2005/2008/2010 CodeLite 6.1.

Aprire MPLAB. Cliccare sull icona presente sul Desktop

Fondamenti di Informatica II 6. Esercitazioni Laboratorio 1

Esplorare e modificare il file system Compilare con gcc Lanciare un programma da linea di comando

Installazione. Eclipse. Workspace. Primo Avvio. Fondamenti di Informatica T2 Modulo 2. Università di Bologna A.A. 2008/2009

Introduzione a Visual Studio Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Introduzione al DEV C++

Ambiente di Sviluppo Dev-C++

Il Linguaggio C. Caratteristiche. Caratteristiche. Esempio di programma in C. Tipi di dato primitivi in C. Dati

Fondamenti di informatica T-1 (A K) Esercitazione 6: Eclipse

I TUTOR. Massimiliano Cattafi Ilaria Laurenti

ISTRUZIONI DEVC++ Autore: Luca Florio (luca.florio<at>polimi.it)

Tutorial su Codelite. Luca Ceriani 2011 Federico Cerutti

2 Lavorare con Eclipse

A.A Laboratorio n 1 Ing. Gian Enrico Conti. Milano, XX mese 20XX

Integrated Development Environment (IDE) DevC Manuale utente

Introduzione alla compilazione ed esecuzione di programmi C con IDE Dev-C++

Cos'é Code::Blocks? Come Creare un progetto Come eseguire un programma Risoluzione problemi istallazione Code::Blocks Che cos è il Debug e come si usa

Debug di un programma

Guida introduttiva su Eclipse. Ing. Marco Dell'Unto

Il compilatore Dev-C++

LabView Parte 1 IL LABVIEW LEZ_1. Corso di. Misure per la Automazione e la Qualità (Studenti Ingegneria Elettrica III anno Nuovo Ordinamento )

Linguaggio C: Introduzione ad ambienti di sviluppo integrati (IDE) e a Dev-C++ Università degli Studi di Brescia

Cos'è il Debug? Il debug di un programma è la fase di ricerca e correzione di errori che si manifestano a runtime

INSTALLAZIONE E UTILIZZO DEL COMPILATORE Code::Blocks 8.02

Il Manuale di KXSLDbg. Keith Isdale Traduzione del documento: Samuele Kaplun Traduzione del documento: Simone Solinas

Laboratorio di informatica Ingegneria meccanica

Bloodshed Dev-C++ Bloodshed Dev-C++ è l IDE usato durante le esercitazioni/laboratorio. IDE = Integrated Development Environment. Codice corso: 21012

Corso di Laurea Ingegneria Informatica Laboratorio di Informatica

PG5 Starter Training Applicazione Daniel Ernst EN Stefano Peracchi IT

Transcript:

Fondamenti di Informatica e Laboratorio T-AB e Fondamenti di Informatica T1 Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione a.a. 2011/2012 Lab 01 Introduzione a Codelite Lab01 1

Costruzione di un Applicazione Per costruire un applicazione occorre: compilare il file (o i file se più d uno) che contengono il testo del programma (file sorgente) Il risultato sono uno o più file oggetto. collegare i file oggetto l uno con l altro e con le librerie di sistema. Lab01 2

Compilazione di un Applicazione 1) Compilare il file (o i file se più d uno) che contengono il testo del programma File sorgente: estensione.c File oggetto: estensione.o o.obj f1.c compilatore f1.obj f1.obj: Una versione tradotta che però non è autonoma (e, quindi, non è direttamente eseguibile). Lab01 3

Collegamento (Linking) di un Applicazione 2) Collegare il file (o i file) oggetto fra loro e con le librerie di sistema File oggetto: estensione.o o.obj File eseguibile: estensione.exe o nessuna f1.obj linker prog.exe LIBRERIE DI SISTEMA Programma eseguibile Lab01 4

Collegamento (Linking) di un Applicazione LIBRERIE DI SISTEMA: insieme di componenti software che consentono di interfacciarsi col sistema operativo, usare le risorse da esso gestite, e realizzare alcune "istruzioni complesse" del linguaggio Lab01 5

Ambienti Integrati Oggi, gli ambienti di lavoro integrati automatizzano la procedura: compilano i file sorgente (se e quando necessario) invocano il linker per costruire l eseguibile ma per farlo devono sapere: quali file sorgente costituiscono l applicazione il nome dell eseguibile da produrre. Lab01 6

Progetti È da queste esigenze che nasce il concetto di PROGETTO un contenitore concettuale (e fisico) che elenca i file sorgente in cui l applicazione è strutturata ed eventualmente altre informazioni utili. Oggi, tutti gli ambienti di sviluppo integrati, per qualunque linguaggio, forniscono questo concetto e lo supportano con idonei strumenti. Lab01 7

Progetti in Codelite Download an installer which includes codelite IDE + MinGW suite (GNU toolchain + WinAPI) Lab01 8

Progetti in Codelite Tramite il menu Workspace scegliere New Workspace Lab01 9

Progetti in Codelite Inserire il nome del Workspace ed il percorso Si consiglia di lavorare sempre in c:\temp

Progetti in Codelite Ogni workspace può contenere uno o più progetti

Progetti in Codelite Selezionare la categoria Console ed il template gcc Inserire il nome del progetto

Progetti in Codelite Workspace View EditorView Output View

Progetti in Codelite Workspace View Alla creazione di un progetto, l IDE Codelite crea automaticamente il file principale contenente la funzione main del programma. Da questa interfaccia è dedicata alla gestione dei file sorgente

Progetti in Codelite Click destro sulla directoy src per aggiungere un file sorgente

Progetti in Codelite Barra delle Tab: veloce accesso ai file sorgenti aperti Elenco delle funzioni: per raggiungere velocemente un punto nel codice EditorView Numeri di linea

Progetti in Codelite Output View Controllo degli errori con Visualizzazione visualizzazione dei comandi dell output di di compiling e di linking compilazione su console Visualizzazione intuitiva degli errori e dei warning di compilazione

Progetti in Codelite Per Eseguire il programma Build = Compile + Link

Il Debugger Una volta scritto, compilato e collegato il programma (ossia, costruito l eseguibile) occorre uno strumento che consenta di eseguire il programma passo per passo vedendo le variabili e la loro evoluzione e seguendo le funzioni via via chiamate. Debugger Lab01 19

Debugger Sia Codelite sia altri ambienti di sviluppo incorporano un debugger con cui eseguire il programma, riga per riga entrando anche dentro alle funzioni chiamate oppure considerando le chiamate di funzione come una singola operazione oppure inserendo breakpoints Lab01 20

Progetti in Codelite Eseguire in modalità debug Inserire un Breakpoint

Fase di Debugging Prima di iniziare la sessione di debugging e possibile inserire i cosiddetti breakpoints punti di interruzione nell esecuzione del programma in cui il debugger fornisce una fotografia dello stato delle variabili Per inserire un breakpoint posizionare il cursore nel punto in cui si vuole fermare il debug e (alternative): Utilizzare il comando da Menù Premere F9 Singolo click a fianco del numero di riga Lab01 22

Debugger Comandi veloci Debug Debug Mode Indicatore di posizione Debug Locals: Vista dello stato corrente di esecuzione Variabili-Valori-Tipo Lab01 23

Debugger: Come Procedere Nel menu Debug che compare quando il Debugger e attivo ci sono alcune voci importanti: Execute: esegue il programma fino al prossimo Debug Step in: esegue passo passo le istruzioni di una funzione Step Out: esegue l istruzione e torna alla funziona chiamante Next: esegue l istruzione corrente Show current line: permette di posizionare il cursore in una determinata posizione nel sorgente e esegue tutte le istruzioni fino ad arrestarsi al cursore. Lab01 24

Debugger Execute Show current Line Step In Next Step Out Lab01 25

Debugger Rappresentazione Array statici Lab01 26

Debugger Rappresentazione parti non in stack:watches Lab01 27

Debugger Rappresentazione parti non in stack:watches Lab01 28

Progetti in Codelite Debug Execute

Build: Warning Indicazione del warning Lab01 30

Build: Errors Indicazione degli errori Lab01 31