PDA

Visualizza versione completa : ./configure, make e make install


jan_81
19-09-2003, 09.34.55
In oggetto i comandi per compilare e installare da sorgenti. E' il comando che fin ora uso di più ma che ancora non ho ben chiaro. Cioè, in realtà cosa succede nel mio computer quando do sti comandi?? Che tipo di processo viene avviato? Immagino ci sia un verifica dell'hardware e dell'software, ma mi sapreste dire qualcosa di più specifico??


Thanks all..

pholcus
19-09-2003, 10.50.49
Ciao.

Quando scrivi ./configure (che nn e' un comando) mandi in esecuzione il file configure nella directory dei sorgenti del software che hai deciso di compilare. Questo file e' uno script che esegue alcuni controlli sulle varie librerie installate nel sistema, gli header opportuni, setta varie opzioni che verranno passate al compilatore e a volte controlla il tipo di cpu in modo da poter ottimizzare al meglio il codice eseguibile che verra' generato..

Questo script genera poi il Makefile. nel Makefile sono presenti le regole di compilazione del programma. Per esempio se il programma va compilato con le informazioni di debug o no..

Il comando make legge il Makefile e lancia i comandi specificanti nel makefile. make esegue solo i comandi sui file che nn sono aggiornati.

Il comando make install non fa altro che eseguire il comando install presente nel makefile.

un esempio banale di Makefile:


eseguibile:
gcc file.c -o file.x
debug:
gcc -ggdb file.c -o file_debug.x
opt:
gcc -O2 file.c -o file_opt.x
clean:
rm *.x


scrivendo make produrra il file eseguibile file.x
scrivendo make debug verra' creato il file con informazioni di debug
scrivendo make opt verra' creato il file ottimizzato.
con make clean invece si rimuoveranno i vari eseguibile.

Tutto questo in maniera sommaria..spero di essere stato abbastanza chiaro..

Ciao!

pholcus
19-09-2003, 11.02.07
http://www.google.it/search?q=makefile

jan_81
19-09-2003, 11.41.00
Tu sei stato chiarissimo, sono io che ora vado in tilt..
Compilatore, che cos' in realtà la compilazione? Come funziona? Cosa sono le informazioni di debug??

Google mi è amico, lo so, ma ho bisogno di più.. un libro o un manuale che tratta l'argomento e non un "Linux blabla" che spiega come usare vi, come stampare, come mandare mail.. Tu come hai imparato? Sai indicarmi la retta via?? :)

Grazie mille.

ANDY CAPS
19-09-2003, 13.53.56
http://a2.swlibero.org/a21.html

qui se vuoi affrontare linux un po piu seriamente c'è tutto quanto

pholcus
19-09-2003, 15.37.42
Originariamente inviato da jan_81
Tu sei stato chiarissimo, sono io che ora vado in tilt..
Compilatore, che cos' in realtà la compilazione? Come funziona? Cosa sono le informazioni di debug??

Google mi è amico, lo so, ma ho bisogno di più.. un libro o un manuale che tratta l'argomento e non un "Linux blabla" che spiega come usare vi, come stampare, come mandare mail.. Tu come hai imparato? Sai indicarmi la retta via?? :)

Grazie mille.

mmm..e' un po complicato spiegare cos'e' e come funzionano i compilatori i poche righe..

In parole povere ( molto povere ) il compilatore trasforma il codice sorgente ( che puo essere c, c++, java, ecc,ecc. ) facilmente comprensibile dall'uomo in codice macchina eseguibile..

Le informazioni x il debug vengono messe dal compilatore nel file compilato in modo da poter rintracciare meglio un eventuale crash del programma. Questo e' utile se vuole scovare qualche bug o situazione critica ma rallenta l'esecuzione del programma e ne incrementa le dimensioni in memoria..

Guarda ti potra sembrar strano ma la maggior parte di cose che nn so le cerco proprio su internet..Con un po di pazienza si riesce a trovare tutto..

La retta via? Penso nn ne esista una comune..c'e' chi e' autodidatta, chi no..chi lo fa x passione chi per lavoro.. Potrei consigliarti di cominciare a prendere qualche rivista in edicola (se gia nn lo fai ) , e poi mano a mano che impari, andare in libreria e comparare qualche testo + impegnativo..

Ciao!

jan_81
19-09-2003, 15.55.15
Originariamente inviato da ANDY CAPS
http://a2.swlibero.org/a21.html

qui se vuoi affrontare linux un po più seriamente c'è tutto quanto

(Y)
E' gia tra i segnalibri, con calma me lo guardo..

Il fatto è che lo sto prendendo troppo seriamente.. :rolleyes:

:)

jan_81
19-09-2003, 16.18.20
Originariamente inviato da pholcus


mmm..e' un po complicato spiegare cos'e' e come funzionano i compilatori i poche righe..

In parole povere ( molto povere ) il compilatore trasforma il codice sorgente ( che puo essere c, c++, java, ecc,ecc. ) facilmente comprensibile dall'uomo in codice macchina eseguibile..

Le informazioni x il debug vengono messe dal compilatore nel file compilato in modo da poter rintracciare meglio un eventuale crash del programma. Questo e' utile se vuole scovare qualche bug o situazione critica ma rallenta l'esecuzione del programma e ne incrementa le dimensioni in memoria..

Guarda ti potra sembrar strano ma la maggior parte di cose che nn so le cerco proprio su internet..Con un po di pazienza si riesce a trovare tutto..

La retta via? Penso nn ne esista una comune..c'e' chi e' autodidatta, chi no..chi lo fa x passione chi per lavoro.. Potrei consigliarti di cominciare a prendere qualche rivista in edicola (se gia nn lo fai ) , e poi mano a mano che impari, andare in libreria e comparare qualche testo + impegnativo..

Ciao!

molto chiaro.. (Y)

Quindi niente pozioni magiche? Internet, manuali e riviste?? Sono sulla strada giusta insomma...

Sai cosa, ho così voglia di sapere tutto su linux, che oramai mi ritrovo con un'amante pinguino.. Passo mooolto tempo su riviste, manuali, libri, internet.. e in più aggiungici che lo faccio per lavoro.
Ma ci son comunque un miliardo di cose da sapere, e allora capisci che, è normale che a volte mi chiedo.. ma come ca##o fanno quelli a saperne così tanto?? Con tutto l'impegno che ci metto anch'io!!
Comunque dai, credo di aver capito, è solo questione di tempo..