Chiarificazione Dovuta e Necessaria:
Installare programmi compilandoli manualmente dagli archivi scaricati dai siti esterni è pericoloso, non raccomandato, non supportato.
In Sabayon i metodi supportati e sicuri per installare software sono
entropy e
portage, ovvero i suoi gestori dei pacchetti.
Qualsiasi altro metodo può funzionare o può non funzionare, in ogni caso l'utente risponde degli effetti.
./compile, che io sappia, non esiste, ti riferisci forse a
make?
La compilazione di un programma (quando questo è scritto in C/C++) è usualmente costituita da varie fasi:
1) ./configure:
genera un makefile appropriato per il sistema, per fare questo controlla che esistano librerie, che la configurazione del kernel sia appropriata, che il computer sia di un certo tipo. In sostanza qualsiasi cosa che serva per determinare come compilare il programma. Questo stadio è reso necessario dalla grande varietà di configurazioni e di sistemi Unix o Unix-like in circolazione.
2) compilazione: per questo stadio si usa il comando
make, make si occupa in sostanza di compilare nel modo appropriato l'applicazione riducendo al minimo i tempi di compilazione e compilando nella sequenza appropriata tutti i vari moduli dell'applicazione. Per far questo si serve di un file denominato
Makefile. Il
Makefile dichiara le dipendenze dei vari file che compongono il progetto (file .c, .cpp, header, librerie, etc...) e come devono essere compilati (quali compilatori utilizzare, quali librerie collegare, quali flag di ottimizzazione utilizzare, etc...).
Nello scenario tipico, come ho detto al punto 1), il
Makefile è generato, totalmente o in parte, da
./configure3) installazione: i
Makefile contengono anche le informazioni su come installare il programma. In genere ci sono una serie di "cose opzionali" che ciascun
Makefile può eseguire. In genere esistono almeno installazione e disinstallazione.
Queste sono usualmente invocate con:
- Code: Select all
make install
e
- Code: Select all
make uninstall
(alle volte viene usato il nome alternativo
make deinstall)
di solito vanno richiamate come
root.
L'organizzazione sia di uno script
configure che di un
Makefile non sono tipici, non sono nemmeno scontati o banali, non contengono un insieme "ben definito" di istruzioni. Variano in base all'esigenza dell'applicazione a cui si "riferiscono".
Generalmente si creano
a mano solo per progetti molto piccoli, il più delle volte son generati automaticamente da strumenti appositi nei programmi per lo sviluppo di software.