Compilazione file oggetto

Nole

Membro TOP
Utente Premium
16 Luglio 2016
77
15
8
Considero un esempio pratico. Ho tre file:
main.c
servizio_treni.c
servizio_treni.h
Una volta scritti i codici, quali istruzioni devo scrivere esattamente su terminale per ottenere prima il file "servizio_treni.o" e poi il "main.o"?
Chiedo scusa per la stupidità della domanda, ma non me la cavo bene con la compilazione da terminale, e su internet il materiale per impararla è pari a 0
 

stillduke

Membro
24 Luglio 2017
9
5
3
Ciao! In primis ti consiglio di utilizzare un Makefile per la compilazione dei file .c e per il building dell'eseguibile in generale(ti allego la slide di Cotroneo in cui ne parla). Partiamo dal presupposto che per compilare serve appunto un compilatore installato sulla propria macchina virtuale, per farlo basta digitare su terminale "sudo apt install build-essential" (potresti anche scrivere solamente "sudo apt install gcc", ma l'istruzione precedente installa vari tool fondamentali anche nell'utilizzo dei pthread e della relativa libreria); una volta fatto ciò, ci sono alcune istruzioni (sono sempre le stesse) da eseguire per compilare e linkare tutto ciò di cui hai bisogno per eseguire il programma. Ti scrivo di seguito il link onedrive per scaricare il makefile ,con le istruzioni necessarie, relativo al tuo problema; per utilizzarlo deve trovarsi nella stessa cartella dei file .c e per eseguirlo scrivi su terminale "make".

OneDrive: https://communitystudentiunina-my.s...FEkFCr61HW66oBU1gYVIl6aw_cjyHAJLewPQ?e=8sLk4y
 

Allegati

  • SO-ES3-makefile-librerie.pdf
    311 KB · Visualizzazioni: 16

Nole

Membro TOP
Utente Premium
16 Luglio 2016
77
15
8
Ciao! In primis ti consiglio di utilizzare un Makefile per la compilazione dei file .c e per il building dell'eseguibile in generale(ti allego la slide di Cotroneo in cui ne parla). Partiamo dal presupposto che per compilare serve appunto un compilatore installato sulla propria macchina virtuale, per farlo basta digitare su terminale "sudo apt install build-essential" (potresti anche scrivere solamente "sudo apt install gcc", ma l'istruzione precedente installa vari tool fondamentali anche nell'utilizzo dei pthread e della relativa libreria); una volta fatto ciò, ci sono alcune istruzioni (sono sempre le stesse) da eseguire per compilare e linkare tutto ciò di cui hai bisogno per eseguire il programma. Ti scrivo di seguito il link onedrive per scaricare il makefile ,con le istruzioni necessarie, relativo al tuo problema; per utilizzarlo deve trovarsi nella stessa cartella dei file .c e per eseguirlo scrivi su terminale "make".

OneDrive: https://communitystudentiunina-my.s...FEkFCr61HW66oBU1gYVIl6aw_cjyHAJLewPQ?e=8sLk4y
Ciao, e grazie per la tua risposta. Il mio problema è che spesso, quando compilo il makefile, mi dice ad esempio "void inizializza non trovato", anche se io ho incluso tutti i file in maniera opportuna. Nei prossimi giorni faccio qualche nuovo test e ti faccio sapere se ho ancora problemi. Grazie ancora!
 

Seguici su Facebook