Costruzione di applicazioni Compilazione Loading (linking) Esecuzione su Linux.

Slides:



Advertisements
Presentazioni simili
ESERCITAZIONE R 12,19 marzo 2012 Mario Mastrangelo
Advertisements

Manerba Daniele – Università degli Studi di Brescia – a.a
BCX (user guide: cineca
Compilazione di Programmi C/C++
Una applicazione complessa non può essere sviluppata in un unico file: sarebbe ingestibile! Deve necessariamente essere strutturata su più file sorgente.
Introduzione al C++ e alla programmazione ad oggetti febbraio Costruzione di applicazioni Compilazione Loading (linking) Esecuzione su Linux.
Code::Blocks Ambiente di sviluppo.
Code::Blocks Ambiente di sviluppo.
I linguaggi di programmazione
Marco Barisione Estendere Python in C.
File System Cos’è un File System File e Directory
1 Classi di memorizzazione. 2 Definiscono le regole di visibilità delle variabili e delle funzioni quando il programma è diviso su più file Stabiliscono.
Differenze tra C e C++ Commenti: Adesso puoi inserire dei commenti tra // e la fine della linea. Usare le librerie C: In C++ puoi anche chiamare una funzione.
DLL: Dynamic Linking Library
Dr. Giovanni Stracquadanio
Interfaccia del file system
Laboratorio di Linguaggi note sull'uso dell' IDE DevC++ Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese.
Laboratorio di Linguaggi lezione II Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea in.
Corso Linux Base 2. Uso del Sistema. © Corso Linux Base - Uso del Sistema Logging In (1) Una volta partito il sistema lutente esegue la procedura.
1 Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008) Introduzione a Java: primo programma, installazione dellambiente di sviluppo, compilazione.
Installazione pacchetti sotto Linux. Linux: Installare le applicazioni Adesso che abbiamo configurato Linux vogliamo imparare a installare qualche programma.
Tutorial per luso di Pon-SitoVeloce 1. In Pon-SitoVeloce è possibile realizzare un sito con pochi click. Questa è la schermata dopo laccesso. Per iniziare.
Un introduzione a Java Ant per lutilizzo con Swarm Marco Lamieri 13/04/2004.
PROGETTO CRESCO Linea Attività 1 / SP1.2 Strumenti per la Grafica Martedì, 11 Dicembre PROGETTO CRESCO Linea Attività 1 / SP1.2 Strumenti per la.
Sistema Operativo Architettura degli elaboratori 1 - A. Memo La gestione dei processi stallo 9 soluzione corretta si utilizzano un semaforo per.
Le classi Definizione di classe Attributi e metodi di una classe Costruttori e distruttori Private e public Funzioni friend Il puntatore this.
Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per lambiente e il territorio Ambienti di programmazione Stefano Cagnoni e Monica Mordonini.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Algoritmi e Programmazione Avanzata
Per costruire unapplicazione occorre compilare il file (o i file se più duno) che contengono il testo del programma (file sorgente) Il risultato sono uno.
Nicola Amapane Tommaso Boccali (SNS Pisa)
Il compilatore Dev-C++
In questo tutorial viene spiegato come creare un nuovo account di posta elettronica in Mozilla Thunderbird Nella pagina di accesso veloce agli strumenti,
PROGRAMMARE IN C Un ambiente di sviluppo `e un software che serve per scrivere ed eseguire programmi. Generalmente integra almeno 3 funzionalita’: Editor:
In questo tutorial viene spiegato come creare un nuovo account di posta elettronica in Windows Live Mail Dalla barra in alto, (scheda Account), selezionare.
Unità Didattica 1 Linguaggio C
Lavorare con le query Federica Scarrione 18/05/2009 fonte:
Ant Che cos’è Come si utilizza Funzionalità principali
Introduzione al C Davide Gadia.
1 Esempio di ADT e make Operazioni bit a bit su piu’ file.
PHP - PHP: Hypertext Preprocessor. Introduzione PHP (acronimo ricorsivo per "PHP: Hypertext Preprocessor") è un linguaggio di scripting general-purpose.
JAVA Per iniziare. Verificare installazione javac –version java –version Cercare i files e sistemare eventualmente il path.
Programmazione in linguaggio C
ROOT Tutorial.
1 Il file system di Unix Caratteristiche generali dei FS comunemente usati da Unix/Linux.
1 Esercitazione Sistemi distribuiti: sistemi che risisedono su più calcolatori interconnessi da una rete di comunicazione Algoritmi distribuiti: programmi.
1 Il file system di Unix Caratteristiche generali dei FS comunemente usati da Unix/Linux.
Foglio 1 Di cosa si occupa il gestore della memoria?
File binari Accesso a file con record di lunghezza costante Struct Persona { Int id; Char nome[50];// nome e cognome Double stipendio; }; Persona dipendente;
Informatica 4 Funzioni. FUNZIONE: definizione MATEMATICA Relazione (o applicazione) binaria tra due insiemi A e B che associa a ogni elemento di A un.
1 SC che operano su processi Getpid, fork, exec, wait, waitpid, exit, dup, dup2.
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
1 Compilazione separata. 2 Finora abbiamo trattato solo programmi C contenuti in un unico file define/include variabili globali typedef main def F1 …
Compilazione separata
Ancora sulla shell. Shell e comandi La shell e' un programma che interpreta i comandi dell'utente. I comandi possono essere dati da terminale, oppure.
IC3N 2000 NSCRIPT D.E.I.S. Università di Bologna DEISNet
Elisa Turrini Tel: 051/ Ricevimento: per appuntamento Dipartimento di Scienze dell’Informazione
Lezione X Laboratorio di Programmazione. Struttura di un programma Definizione classe e specifica (parziale) classe.hclasse.cpp main.cpp Specifica metodi.
Concetti Fondamentali sulla Programmazione
Corso di Laboratorio primo modulo Introduzione all'uso di un sistema operativo. Introduzione all'uso della shell (bash). Java – –Introduzione – –Tipi di.
La dichiarazione di una funzione è costituita dalla sola interfaccia, senza corpo (sostituito da un ; ) ::= ( ) ; DICHIARAZIONI DI FUNZIONE.
1 Laboratorio di Programmazione di Sistema - C Susanna Pelagatti Ricevimento: Me ,
1 Java primo contatto Quando le classi fanno la differenza …
LNL CMS M.Biasotto, Bologna, 28 maggio Upgrade farm a RH-7.3  Due anni fa la farm era stata installata usando una versione customizzata di ANIS.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Librerie… Marco D. Santambrogio – Ver. aggiornata al 20 Luglio 2015.
Università di Ferrara Facoltà di Ingegneria Esercitazioni di FONDAMENTI DI INFORMATICA MODULO B Rita Riccardo
CCR - Frascati 29 settembre 2008 Gruppo storage CCR Status Report Alessandro Brunengo.
Files in C++ Motivazioni Un programma in esecuzione legge (sequenzialmente) una sequenza di caratteri prodotti "al volo" dall'utente (tramite tastiera)
Claudio Rocchini - Interfacce
Transcript della presentazione:

Costruzione di applicazioni Compilazione Loading (linking) Esecuzione su Linux

Programmi semplici Per compilare e linkare programmi semplici: c++ mytest.cpp Leseguibile sarà a.out (./a.out ) Per cambiare il nome delleseguibile: c++ -o mytest mytest.cpp Per vedere quello che fa il compilatore: c++ -v mytest.cpp

Uso di librerie esterne Per compilare e linkare usando librerie esterne: c++ -Iheader_dir -Llib_dir \ -llib_name mytest.cpp N.B. lib_name senza il prefisso lib e il suffisso.a o.so

Esempio: uso di CLHEP CLHEP è un pacchetto sviluppato a SLAC con classi utili per HEP Header files in: /cern/CLHEP/include Libreria ( libclhep.a ) in: /cern/CLHEP/lib c++ -I/cern/CLHEP/include \ -L/cern/CLHEP/lib -lclhep \ mytest.cpp

Programmi più complessi Se si hanno più files da compilare e linkare: –compilazione senza load dei singoli files: c++ -c a.cc -o a.o c++ -c b.cc -o b.o –load di tutti i files: c++ mytest.cpp a.o b.o

Produzione di una libreria Meglio: –compilazione senza load dei singoli files: c++ -fPIC -c a.cc -o a.o c++ -fPIC -c b.cc -o b.o –creazione di una shared library: c++ -shared -o libmylib.so \ a.o b.o –creazione di una archive library: ar -r libmylib.a a.o b.o

Uso di shared libraries E necessario definire una variabile ambientale LD_LOAD_PATH che contenga il nome della directory in cui si trova la libreria prima di eseguire il programma Alternativamente si può compilare con C++ aggiungendo lopzione: -Wl,-rpath lib_dir -Llib_dir\ -llibname

Uso di Makefile Luso del comando make con un Makefile semplifica molto la vita in caso di pacchetti complessi!