Linux: Amministrazione sistema, Documentazione, HowTo, Tutorial, Recensioni, Manuale, Programmi, Software
LinuxGuide.it - Amministrazione Linux, Documentazione, HowTo, Tutorial, Recensioni, FAQ, Guide, News, Open Source...
Amministrazione sistema
 Amministrazione sistema Fondamentis  Fondamentis
 Amministrazione sistema Ambiente di sistema  Ambiente di sistema
 Amministrazione sistema Comandi Linux  Comandi Linux
 Amministrazione sistema Boot loader  Boot loader
 Amministrazione sistema Filesystem  Filesystem
 Amministrazione sistema Backup  Backup
 Amministrazione sistema Gruppi e Utenti  Gruppi e Utenti
 Amministrazione sistema Permessi  Permessi
 Amministrazione sistema Archivi e file compressi  Archivi e file compressi
 Amministrazione sistema Pacchetti (rpm, deb...)  Pacchetti (rpm, deb...)
 Amministrazione sistema Periferiche  Periferiche
 Amministrazione sistema Autenticazione utenti  Autenticazione utenti
 Amministrazione sistema Rete  Rete
 Amministrazione sistema Servizi di Rete (Server)  Servizi di Rete (Server)
 Amministrazione sistema Sviluppo  Sviluppo
 
Tutorial & HowTo
 Tutorial & HowTo Applicazioni  Applicazioni
 Tutorial & HowTo Internet  Internet
 Tutorial & HowTo Rete  Rete
 
FAQ Linux
 FAQ Linux Amministrazione sistema  Amministrazione sistema
 FAQ Linux Reti e rete  Reti e rete
 FAQ Linux Programmi  Programmi
 FAQ Linux X Window System  X Window System
 FAQ Linux Applicazioni  Applicazioni
 FAQ Linux Stampa  Stampa
 FAQ Linux Editoria  Editoria
 FAQ Linux I Caratteri font  I Caratteri font
 FAQ Linux Immagini  Immagini
 FAQ Linux Masterizzazione  Masterizzazione
 FAQ Linux Audio  Audio
 FAQ Linux Programmazione  Programmazione
 FAQ Linux Hardware  Hardware
 
Recensioni
 Recensioni Anno 2008  Anno 2008
 
Software Linux
Software Linux Giochi  Giochi
Software Linux Grafica  Grafica
Software Linux Internet  Internet
Software Linux Multimedia  Multimedia
Software Linux Rete  Rete
Software Linux Server  Server
Software Linux Sicurezza  Sicurezza
Software Linux Sistema  Sistema
Software Linux Sviluppo  Sviluppo
 
News Letter
Per essere sempre aggiornato!
 
 
RSS Feed
News in tempo reale!
 
Seguici su Facebook
Unisciti al nostro Linux Facebook Group
 
Popular tags
 
 
 
 
 
 
 
Home page Amministrazione sistema Sviluppo
Cerca:
 Categoria: Amministrazione sistema > Sviluppo

Linux: Compilare i sorgenti

 
è stato letto: 1741 volte
voto: 8 / 10
rating:
Vota OK questo articolo Vota KO questo articolo (vota questo articolo)
 
tag: compilazione, sorgenti, make, configure, install
 
Condividiamo documentazione, howto, info, news, articoli, manuali linux Condividi questo documento su:
 

Compilare i sorgenti


Info documento
Ultimo aggiornamento: 07 Dicembre 2007
Distribuzione di test: Fedora Core 6


Introduzione
In questa guida impareremo come installare un applicativo partendo dalla compilazione dei sorgenti.
Ma cosa sono questi sorgenti(source)? Open Source significa codice aperto ovvero la possibilità di modificare un software(rispettando le condizioni d'uso) variando parte del codice sorgente tipicamente scritto in C - questo consente quindi di adattare un dato software alle proprio esigenze contribuendo allo stesso tempo anche al miglioramento dello stesso.
Il termine compilare significa in parole semplici costruire file binari(eseguibili) partendo dal codice sorgente o codice di programmazione. Dopo aver compilato e quindi creato i nostri file binari i sorgenti possono essere rimossi.

In ambito linux un pacchetto software per poter funzionare potrebbe richiedere la presenza di un'altro, questo viene detto "dipendenza". Un difficoltà nota(per i principianti) nella compilazione dei sorgenti rispetto all'installazione di un pacchetto in formato .rpm, .deb, .pkg o qualsiasi altro pacchetto in formato binario è la risoluzione delle dipendenze. Quando installiamo un pacchetto binario per esempio in formato .rpm il tool di gestione rpm è in grado di segnalarci se mancano altri pacchetti per l'installazione del software da noi desiderato comunicandoci il nome del pacchetto che manca o addirittura scaricarlo in automatico da internet - questo rende il processo di installazione di un software più facile rispetto alla compilazione dei sorgenti.

Dopo questa breve introduzione cerchiamo di capire come compilare un software dopo aver scaricato i sorgenti che solitamente traviamo compressi in formato .tar.gz o tar.bz2 e risolvere le dipendenze.

Prima di tutto dobbiamo accertarci che sul nostro sistema siano presenti i tools di sviluppo software per compilare i sorgenti. Quasi in tutte le distribuzioni questi tools vengono raggruppati all'interno del gruppo Development o Sviluppo software - i principali sono cpp, gcc, gcc-c++, gcc-gfortran, autoconf, automake, make, bison, binutils, flex, patch, tcl, tk, ecc...

Supponiamo di aver scaricato un applicativo in formato sorgente denominato "test.tar.gz" che desideriamo installare sul nostro sistema.

E' buona norma compilare i sorgenti all'interno della directory '/usr/src' ma si è liberi comunque di compilare in qualsiasi parte del filesystem.

Da un terminale eseguiamo il prossimo comando per rendere la shell una shell di login:

# su -


Copiamo il file contente i sorgenti su '/usr/src':

# cp test.tar.gz /usr/src


Entriamo all'interno della directory '/usr/src':

# cd /usr/src


Scompattiamo l'archivio - guida ai file compressi:

# tar xfz test.tar.gz


Entriamo all'interno della directory "test":

# cd test


Utilizzate il comando 'ls' per verificare se all'interno della suddetta directory sono presenti i file di testo README o INSTALL che di solito riportano la procedura da seguire per la compilazione dei sorgenti e le dipendenze software da soddisfare. Per leggere il contenuto dei file di testo anzidetti utilizzate i comandi 'less' o 'more'.

Per linee generali comunque quasi tutti i sorgenti possono essere compilati con la seguente procedura(vi raccomandiamo sempre di leggere sempre i file reame e install se presenti)

Ci troviamo all'interno della directory '/usr/src/test'

Impostiamo i permessi di esecuzione su tutti i file all'interno della directory per poter rendere eseguibili gli script di configurazione:

# chmod +x *


Adesso lanciamo lo script "configure" che troviamo all'interno della directory "test":

# ./configure

tale script "configure" è una procedura software scritta dai programmatori che esegue dei check e si occupa di verificare se le dipendenze vengono soddisfatte, se l'ambiente è compatibile ed idoneo prima di avviare la compilazione.

Se dopo aver eseguito il "./configure" qualcosa non va per il verso giusto dovreste interpretare l'errore che vi restituisce lo script - solitamente gli errori più comuni sono spesso causati da una mancanza di una libreria condivisa, o di un pacchetto o dalla versione dei compilatori. Avvolte basta concentrarsi sulle righe che riportano il testo "error" o "missing" per scoprire la soluzione del problema, non preoccupatevi dei "warning". Nel caso in cui non si riesce ad andare avanti con la compilazione vi consigliamo di copiare l'intera riga riportante il codice dell'errore ed incollarlo su un qualsiasi motore di ricerca(Google), possibilmente qualcuno avrà riscontrato lo stesso problema e magari l'ha già risolto.

Spesso gli script "configure" accettano parametri di configurazione che servono per costruire i binari in un determinato modo piuttosto che in un altro. Per verificare quali parametri sono disponibili possiamo lanciare il "configure" nel seguente modo:

# ./configure --help |more


Solitamente quando installiamo un software compilandolo tutti i suoi file(binari,librerie,manuali,configurazioni, ecc.) vengono posizionati all'interno della directory '/usr/local'. Se intendiamo comunque forzare il percorso di installazione, lanciamo il "configure" nel seguente modo:

# ./configure --prefix=/usr/local


Se tutto è andato avanti senza alcun errore, possiamo finalmente procedere con la creazione vera e propria dei file binari ovvero con la compilazione. Quindi digitiamo il seguente comando:

# make

Alla fine di questa fase tutti i binari sono stati preparati all'interno della stessa directory pronti per essere successivamente copiati e quindi installati sul sistema.

Infine, con il seguente comando completiamo l'installazione:

# make install

A questo punto tutti i file sono stati installati sul sistema all'interno della directory '/usr/local' pronti per essere eseguiti.
 
 
 
Ultimo aggiornamento: 2010-03-19 17:13:03
 
 
 
 
Lascia un commento
no obbligatorio, non sarà mai mostrato

 
 
»Home | About | Legale | Privacy | Pubblicità | Contatti