SDB:Compilare software
Questa procedura è stata testata con openSUSE 12.1 e successive |
Indice
Attenzione
Possono esserci dei problemi al momento della compilazione di un software. Il nuovo software compilato potrebbe sostituirne uno vecchio perfettamente funzionante o peggio ancore compilare un virus o un trojan.
Perciò è preferibile innanzitutto cercare se l'applicazione che desideri è già disponibile come pacchetto binario RPM (precompilati, l'RPM più comune) in uno dei repository dei pacchetti. Puoi anche cercare RPM funzionanti qui, qui o qui o con un motore di ricerca. Un'altra opzione è cercare programmi alternativi che abbiano le stesse funzionalità. Un'ultima opzione è che per le applicazioni semplici, non è sempre obbligatorio avere "RPM SUSE", c'è una grande possibilità che qualsiasi RPM funzioni (RPM per una qualsiasi ordinaria distribuzione).
È piuttosto improbabile trovare del codice così maligno, e certamente sarà proveniente da zone poco raccomandabili di Internet. Ciò nonostante, è meglio non essere troppo confidenti. Una simile situazione è molto rara con Linux, ma in futuro ci potrebbe essere maggior rischio di problemi. Fatta questa precauzione, ricordati di non essere neppure paranoico. Ci sono validi software disponibili sono per compilazione, quindi, se tutto ciò che abbiamo detto prima non dovesse funzionare, puoi compilare il tuo software. Compilare non è altro che trasformare il codice sorgente in un programma che puoi eseguire.
Prerequisiti
Prima di tutto sono necessari gli strumenti di sviluppo (development tools). Apri YaST, accedi a Gestione pacchetti e, dal menu a discesa Visualizza filtra i pacchetti in base ai Modelli. Seleziona almeno "Sviluppo di base" e "Sviluppo in C/C++". Potresti anche aver bisogno dei pacchetti in "Sviluppo di KDE" (o, in alternativa anche solo di "Sviluppo in Qt 4", a seconda del programma compilato), "Sviluppo di GNOME", "Sviluppo in Tcl/Tk" e in alcune situazioni del modello "Sviluppo del kernel Linux" (anche "Sviluppo in Python" potrebbe essere a volte utile). L'unico lato negativo di installare tutti questi pacchetti è l'utilizzo di spazio sul disco.
Alla fine, esegui l'Aggiornamento in linea di YaST per assicurarti che tutto sia aggiornato.
Se vuoi creare un RPM locale per poter installare e rimuovere con semplicità, allora installa anche "checkinstall" (L'utilizzo di checkinstall è solamente per le macchine locali e non deve essere utilizzato per programmi da distribuire). Questo processo è trattato nella sezione Installazione alternativa.
Compilare
Sei pronto per iniziare, visto che la sezione sopra necessita di essere eseguita una sola volta. Scarica il codice sorgente. Spesso il pacchetto termina con .tgz, .tar.gz, .tar.bz2 o .tar.xz.
Successivamente devi estrarre il pacchetto. Se il sorgente ha una delle estensioni menzionate sopra, puoi estrarlo con il comando tar xf nomefile.tar.bz2. Se utilizzi KDE, clicca sull'archivio in Dolphin e si aprirà mostrandoti una cartella con il nome del programma. Copia/Incolla questa cartella dove preferisci, oppure clicca con il tasto destro e seleziona la voce Estrai. Questo è il tuo codice sorgente :-). Un valido strumento per estrarre i pacchetti è eXtract Everything!.
Entra nella cartella che hai appena creato e leggi il file README e/o INSTALL presenti. Se il programma ha un processo di compilazione inconsueto, allora dovrebbe essere spiegato qui. Ciò è molto improbabile e questi file descriveranno quasi certamente la seguente procedura:
Verifica
Sarà necessario verificare che tutto il materiale necessario alla compilazione è disponibile. Lo strumento opportuno per eseguire questo è "configure". Dunque devi eseguire ./configure. Non dimenticare il punto+barra iniziali. Dovrai risolvere ogni problema presentato da eventuali messaggi di errore prima di poter proseguire. Se il programma non possiede lo strumento configure, il motivo di ciò sarà probabilmente spiegato nel file README.
Compilazione
Successivamente esegui il comando make. Questo compilerà il programma che, una volta terminata la sua compilazione, potresti già essere in grado di eseguire. Se il sistema dispone di più di un core logico (CPU con più core, più CPU, etc.), puoi aggiungere il suffisso -jX dove X è il numero di core che desideri utilizzare nella compilazione (questo velocizzerà il processo). Una volta trovata la posizione dell'eseguibile, puoi già tentare di eseguirlo con ./nome_programma o src/nome_programma o ovunque si trovi all'interno della directory. La compilazione può essere velocissima o lentissima. a seconda della dimensione dell'applicazione.
Installazione
Normalmente questa è l'unica parte dove è necessario avere i permessi di root. Questa è anche la parte in cui le precauzioni sopra riportate entrano in gioco. Procedi eseguendo il comando su -c 'make install' (su permette di ottenere i permessi di root, solo per questa operazione). Sarà richiesta la password di root e molto probabilmente installerà il software in /usr/local/bin/.
Installazione alternativa
Un'altra strada è creare un pacchetto RPM che puoi installare e disinstallare. Invece di su -c 'make install', utilizza su -c checkinstall. Questo creerà un RPM situato in /usr/src/packages/RPMS che può essere installato come qualsiasi altro pacchetto RPM. Ricorda che checkinstall è uno strumento per creare programmi da installare soltanto nel tuo computer.
Risoluzione dei problemi
La maggior parte dei pacchetti sarà normalmente funzionante. A volte, spesso con i programmi più vecchi e con quelli più complessi, le cose non andranno a buon fine. Dato che dovresti già aver cercato eventuali pacchetti RPM alternativi e già precompilati, dovrai cercare di capire cosa c'è che non va. Leggi i messaggi di errore. Se dice che non riesce a trovare qualcosa, molto probabilmente non lo hai installato. Copia e incolla questi messaggi di errore se stai chiedendo aiuto ad altri.
È una buona idea leggere il sito web del programmatore. Qui, molto spesso, quando le applicazioni necessitano di librerie particolari, la compilazione è descritta in modo dettagliato (meglio che nei file README o INSTALL).
Riassunto
In breve ciò che devi fare è:
Se qualcosa va storto: leggi i messaggi di errore
oppure
Spostati nella cartella con Dolphin o Konqueror, seleziona il nuovo file RPM, e clicca su Apri con > Installa/rimuovi software.
Vedi anche
Alcuni siti in cui cercare programmi: