Note sulla costruzione del software

Coloro che hanno costruito un sistema LFS saranno consapevoli dei principi generali dello scaricamento e scompattazione dei software. Tuttavia ripeteremo qui alcune delle informazioni per coloro che sono nuovi alla costruzione del proprio software.

Ciascun insieme di istruzioni di installazione contiene un URL dal quale si può scaricare il pacchetto. Inoltre manteniamo una selezione delle patch disponibili via http. Ad esse si fa riferimento quando necessario nelle istruzioni di installazione.

Sebbene si possano tenere i file sorgenti ovunque si voglia, supponiamo che esse e tutte le patch necessarie siano stati scompattati in in /usr/src.

Non insisteremo mai abbastanza sul fatto che ogni volta bisognerebbe partire da un albero dei sorgenti pulito. Ciò significa che se si è commesso un errore, normalmente è meglio cancellare l'albero sorgente e riscompattarlo prima di provare di nuovo. Questo ovviamente non vale se si è un utente avanzato abituato all'hacking dei Makefile e del codice C, ma, in caso di dubbio, partire da un albero pulito.

Scompattazione del software

Se un file è stato creato con tar e gzip, si scompatta eseguendo uno dei seguenti comandi, a seconda del suo nome:

tar -xvzf filename.tar.gz
tar -xvzf filename.tgz
tar -xvzf filename.tar.Z

Se un file è stato creato con tar e bzip2, normalmente può essere scompattato eseguendo:

tar -jxvf filename.tar.bz2

Si può anche usare un metodo leggermente diverso:

bzcat filename.tar.bz2 | tar -xv

Infine talvolta è necessario essere in grado di scompattare patch che generalmente non sono state archiviate con tar. Il modo migliore per farlo è di copiare il file della patch in /usr/src e poi eseguire uno dei seguenti comandi, a seconda che il file sia .gz o .bz2:

gunzip patchname.gz
bunzip2 patchname.bz2

Verifica dell'integrità del file usando md5sum

Generalmente per verificare che il file scaricato sia genuino e completo la maggior parte di quelli che manutengono i pacchetti distribuiscono gli md5sums dei file. Per verificare l'md5sum dei file scaricati, scaricare sia il file che il corrispondente file md5sum nella stessa directory (preferibilmente da differenti locazioni on-line), e (supponendo che file.md5sum sia l'md5sum del file scaricato) eseguire il seguente comando:

md5sum -c file.md5sum

Se ci sono errori, verranno riportati.

Creazione dei file di log durante l'installazione

Per i pacchetti più grandi conviene creare file di log invece di fissare lo schermo sperando di vedere un particolare errore o warning. I file di log sono anche utili per fare il debug e mantenere le registrazioni. Il seguente comando permette di creare un log di installazione. Sostituire <command> con il comando che si intende eseguire.

( <command> 2>&1 | tee compile.log && exit $PIPESTATUS )

2>&1 redirige i messaggi di errore nella stessa locazione dello standard output. Il comando tee permette di vedere l'output e contemporaneamente fare il log dei risultati in un file. Le parentesi attorno al comando eseguono l'intero comando in una subshell, e infine exit $PIPESTATUS assicura che sia restituito il risultato di <command> e non il risultato del comando tee.

Last updated on