Pagina Principale/InstallazioneSoftware

Page last edited 1 860 giorni 20 ore fa
Da wiki.betaingegneria.it.

Capire l'installazione software con Linux (configure, make, make install)[modifica]

Fonte

Questo tutorial è rivolto a coloro che hanno appena iniziato ad usare Linux. In genere quando gli utenti che conoscono Windows entrano nella scena Linux, sono totalmente perplessi dal metodo di installazione del software. Essi sono stati abituati al lusso del doppio clic su un singolo file per ottenere il loro software già installato. Ma ora devono digitare comandi criptici per fare la stessa cosa.

Anche se le istruzioni di installazione dicono loro cosa fanno, non hanno idea di che cosa significhi fare quei passi. In questo articolo spiegherò le basi di installazione del software. Dopo aver letto questo articolo vi sentirete più a vostro agio quando installerete del software.

Generalmente i principianti tendono a cercare disperatamente RPM poiché l'installazione di RPM è davvero un compito semplice. Ma questo articolo non parla di RPM. Si tratta del software che in genere si ottiene nei formati compressi come tarball.


Dettagli[modifica]

Generalmente si dovrebbe scariccare software Linux in formato tarball (.tgz). Questo file deve essere decompresso in una cartella qualsiasi con il comando tar. Nel caso in cui scarichiate un tarball dal nome game.tgz, si dovrà digitare il seguente comando

 $ tar xfvz game.tgz

Questo creerà una directory all'interno della directory corrente e verranno decompressi tutti i file all'interno di quella nuova directory. Una volta che questa attività è completata. le istruzioni di installazione richiederanno di eseguire i 3 (ormai famosi) comandi: configure, make e make install.

La maggior parte degli utenti fanno questo e installano correttamente il loro software. Ma la maggior parte dei nuovi arrivati ​​non ha idea di cosa questo realmente significhi. Il resto dell'articolo spiega il significato di questi 3 comandi

Ogni software viene fornito con alcuni file che hanno il solo scopo della sicurezza dell'installazione. Uno di questi è lo script di configurazione. L'utente deve eseguire il seguente comando al prompt

  $ ./configure

Il comando precedente fa eseguire alla shell lo script chiamato 'configure' che esiste nella directory corrente. Lo script di configurazione è costituito essenzialmente da molte linee che vengono utilizzate per verificare alcuni dettagli circa la macchina su cui il software sta per essere installato. Questo script verifica la presenza di un sacco di dipendenze sul vostro sistema. Affinché il particolare software possa funzionare correttamente, esso può richiedere che un sacco di cose già esistano sulla vostra macchina. Quando si esegue lo script di configurazione si dovrebbe vedere un sacco di output sullo schermo, ognuno dei quali è una sorta di domanda e di un rispettivo sì / no come risposta. Se uno dei requisiti principali manca nel sistema, lo script di configurazione viene interrotto e non è possibile procedere con l'installazione, fino a che non si sia ottenuto ciò che è richiesto.

Il compito principale dello script configure è quello di creare una Makefile. Questo è un file molto importante per il processo di installazione. A seconda dei risultati dei test (controlli) che lo script di configurazione ha eseguito, esso dovrebbe scrivere i vari passi che devono essere intrapresi (durante la compilazione del software) all'interno di un file di nome Makefile.

Se non ci sono errori e lo script di configurazione viene eseguito correttamente (se c'è qualche errore, esso verrebbe palesemente dichiarato nelle ultime righe del risultato) allora si può procedere con il comando successivo che è

  $ make

Make è in realtà un programma di utilità che esiste in quasi tutti i sistemi Unix. Per usare il comando make è richiesto un file chiamato Makefile nella stessa directory in cui viene eseguito. Come abbiamo visto, il lavoro principale dello script di configurazione è stato quello di creare un file denominato Makefile per essere usato con il programma di utilità make. (A volte il Makefile è chiamato anche makefile)

make usa le indicazioni presenti nel Makefile e procede con l'installazione. Il Makefile indica la sequenza che Linux deve seguire per costruire i vari componenti / sotto-programmi del software. La sequenza dipende dal modo in cui è progettato il software così come da molti altri fattori.

Il Makefile in realtà ha una moltitudine di etichette (una specie di nomi per le diverse sezioni). Quindi a seconda di cosa deve essere fatto, il controllo passa alle diverse sezioni all'interno del Makefile. Oppure è possibile che alla fine di una delle sezioni ci sia un comando per andare in qualche sezione successiva.

In pratica l'utility make compila tutto il codice del programma e crea gli eseguibili. Per completare una sezione particolare del programma, make potrebbe richiedere qualche altra parte di codice già pronto: questo è ciò che fa il Makefile. Esso definisce la sequenza degli eventi in modo che il programma non si lamenti delle dipendenze mancanti.

Succede che una delle etichette presenti nel Makefile venga chiamata "install".

Se make è stato eseguito correttamente, allora si è quasi finito con l'installazione. L'ultimo passo che rimane è

  $ make install

Come detto prima, make utilizza il file denominato Makefile che è nella stessa directory. Quando si esegue senza make alcun parametro, l'istruzione nel Makefile inizia l'esecuzione dall'inizio e secondo le regole definite all'interno del Makefile (particolari sezioni del codice possono essere eseguite una dopo l'altra... questo è il perché vengono utilizzate le etichette: per saltare da una sezione all'altra).

Ma quando si esegue make con install come parametro, l'utilità make cerca un'etichetta denominata install all'interno del Makefile, ed esegue solo quella sezione del Makefile.

Accade che la sezione install sia solo una parte in cui gli eseguibili e altri file necessari, creati durante l'ultima fase (cioè make), vengono copiati nelle necessarie directory finali sulla vostra macchina. Per esempio, l'eseguibile che l'utente esegue può essere copiato in /usr/local/bin/ in modo che tutti gli utenti siano in grado di eseguire il software. Allo stesso modo tutti gli altri file vengono copiati nelle directory standard in Linux. Ricorda che quando è stato eseguito make, tutti gli eseguibili sono stati creati nella directory temporanea in cui avevi scompattato il tuo tarball originale. Così, quando si esegue make install, questi eseguibili vengono copiati nella directory finale.

Ecco fatto! Ora il processo di installazione deve risultarti chiaro. Sicuramente ti sentirai più a tuo agio quando inzierai la prossima installazione di software :-).