Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "AmministrazioneSistema/InstallareProgrammi/DaSorgenti"
Differenze tra le versioni 73 e 74
Versione 73 del 07/12/2022 17.29.51
Dimensione: 10999
Autore: gnomefanatic
Commento: Revisione
Versione 74 del 29/12/2024 16.48.59
Dimensione: 8766
Autore: jeremie2
Commento: revisione
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 5: Linea 5:
<<Informazioni(forum=''http://forum.ubuntu-it.org/viewtopic.php?f=46&t=614576''; rilasci="22.04 20.04 18.04 16.04 14.04")>> <<Informazioni(forum=''http://forum.ubuntu-it.org/viewtopic.php?f=46&t=614576''; rilasci="24.04 22.04 20.04")>>
Linea 9: Linea 9:
Una peculiarità dei programmi ''open source'' è il fatto che viene sempre reso disponibile il [[https://it.wikipedia.org/wiki/Codice_sorgente|codice sorgente]], scaricabile sotto forma di [[AmministrazioneSistema/FormatiDiCompressione|archivio compresso]] con estensione `.tar.gz`, `.tar.bz2` o `.zip`. Tale archivio contiene file di testo scritti in un [[https://it.wikipedia.org/wiki/Linguaggio_di_programmazione|linguaggio di programmazione]], detti ''file sorgente'', e altri eventuali file necessari al programma, come immagini e suoni. Una peculiarità dei programmi ''open source'' è il fatto che viene sempre reso disponibile il [[https://it.wikipedia.org/wiki/Codice_sorgente|codice sorgente]], scaricabile sotto forma di [[AmministrazioneSistema/FormatiDiCompressione|archivio compresso]] con estensione `.tar.gz`, `.tar.bz2`, `.tar.xz`, o `.zip`. Tale archivio contiene file di testo scritti in un [[https://it.wikipedia.org/wiki/Linguaggio_di_programmazione|linguaggio di programmazione]], detti ''file sorgente'', e altri eventuali file necessari al programma.
Linea 18: Linea 18:
 0. Se si desidera utilizzare il metodo che scarica e installa automaticamente le dipendenze di configurazione, occorre installare il pacchetto [[apt://auto-apt|auto-apt]] (opzionale).<<BR>>Dopo l'installazione è necessario eseguire la configurazione. A tale scopo digitare nel [[AmministrazioneSistema/Terminale|terminale]] i seguenti comandi:{{{
sudo auto-apt update
sudo auto-apt updatedb
sudo auto-apt update-local
}}}
 L'esecuzione richiederà un po' di tempo per completarsi.

Per semplicità consideriamo che i sorgenti siano all'interno della cartella `sorgenti` all'interno della propria '''Home'''.
Linea 26: Linea 22:
Per mantenere ordinata la propria '''Home''' è consigliabile creare una sottocartella specifica per le compilazioni. Più in generale per mantenere ordinata la propria '''Home''' è consigliabile creare una sottocartella specifica per le compilazioni.
Linea 38: Linea 34:
cd ~/nomecartella cd sorgenti
Linea 40: Linea 36:
 sostituendo «`nomecartella`» con il nome della cartella in cui sono stati estratti i sorgenti. Eventuali sottocartelle devono essere separate dal carattere '''/'''.
Linea 43: Linea 38:
}}} }}}Se il file avesse un nome differente, ad esempio `configure.sh`, ripetere il comando col nome corretto.
Linea 48: Linea 43:
{{{#!wiki tip
Spesso per migliorare la compressione [[AmministrazioneSistema/FormatiDiCompressione|dell'archivio compresso]] contenente il [[https://it.wikipedia.org/wiki/Codice_sorgente|codice sorgente]], lo [[Programmazione/LinguaggioBash|script]] di configurazione `configure` e il file `Makefile` vanno creati eseguendo prima lo script `autogen.sh` con il comando:`./autogen.sh`}}}

{{{#!wiki tip
Quasi sempre lo script di configurazione mette a disposizione l'opzione `--prefix=path` che permette di scegliere in quale directory allocare il programma che si va compilando. Nell'uso più frequente di questa opzione il comando diventa:`./configure --prefix=/usr`.
}}}

{{{#!wiki tip
Per ottenere un elenco delle ulteriori opzioni messe a disposizione dallo script digitare l'opzione `-h` oppure consultare i file `INSTALL` o `README` forniti con il sorgente.
}}}

{{{#!wiki note
 {{{#!wiki note
Linea 63: Linea 47:
== Script di configurazione con auto installazione dipendenze ==
 
 0. Assicurarsi di aver installato il pacchetto opzionale ''auto-apt'' come indicato in questo [[#preparativi|paragrafo]].
 0. Aprire il [[AmministrazioneSistema/Terminale|terminale]] e spostarsi nella cartella in cui sono stati estratti i sorgenti digitando il seguente comando:{{{
cd ~/nomecartella
=== Accorgimenti ===

 * Spesso per migliorare la compressione [[AmministrazioneSistema/FormatiDiCompressione|dell'archivio compresso]] contenente il [[https://it.wikipedia.org/wiki/Codice_sorgente|codice sorgente]], lo [[Programmazione/LinguaggioBash|script]] di configurazione `configure` e il file `Makefile` vanno creati eseguendo prima lo script `autogen.sh` con il comando:{{{
./autogen.sh
Linea 69: Linea 52:
 sostituendo «`nomecartella`» con il nome della cartella in cui sono stati estratti i sorgenti. Eventuali sottocartelle devono essere separate dal carattere '''/'''.
 0. Avviare lo [[Programmazione/LinguaggioBash|script]] di configurazione digitando nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
sudo auto-apt run ./configure
 * Quasi sempre lo script di configurazione mette a disposizione l'opzione `--prefix=path` che permette di scegliere in quale directory allocare il programma che si va compilando. Nell'uso più frequente di questa opzione il comando diventa:{{{
./configure --prefix=/usr
Linea 73: Linea 55:

{{{#!wiki
tip
Quasi
sempre lo script di configurazione mette a disposizione l'opzione `--prefix=path` che permette di scegliere in quale directory allocare il programma che si va compilando. Nell'uso più frequente di questa opzione il comando diventa: `sudo auto-apt run ./configure --prefix=/usr`}}}

{{{#!wiki tip
Per ottenere un elenco delle ulteriori opzioni messe a disposizione dallo script digitare l'opzione `-h` oppure consultare i file `INSTALL` o `README` forniti con il sorgente.}}}
 * Per ottenere un elenco delle ulteriori opzioni messe a disposizione dallo script digitare l'opzione `-h` oppure consultare i file `INSTALL` o `README` forniti con il sorgente.
Linea 84: Linea 61:
 0. Aprire il [[AmministrazioneSistema/Terminale|terminale]] e spostarsi nella cartella in cui sono stati estratti i sorgenti digitando il seguente comando:{{{
cd ~/nomecartella
}}}
  sostituendo «`nomecartella`» con il nome della cartella in cui sono stati estratti i sorgenti. Eventuali sottocartelle devono essere separate dal carattere '''/'''.
 0. Creare la cartella `build` digitando nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
mkdir build
}}}
 0. Spostarsi nella cartella appena creata digitando nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
cd build
}}}
 0. Compilare i sorgenti digitando nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
cmake ..
}}}
{{{#!wiki note
Se la generazione del '''makefile''' dovesse interrompersi a causa di una [[AmministrazioneSistema/Pacchetti#Dipendenze|dipendenza]] non presente nel sistema, consultare questo [[#Installazione_dipendenze|paragrafo]].
}}}
Linea 105: Linea 66:
== Installazione dipendenze ==  0. Creare la cartella `build` nella cartella in cui sono stati estratti i sorgenti:{{{
mkdir sorgenti/build
}}}
 0. Spostarsi al suo interno:{{{
cd sorgenti/build
}}}
 0. Compilare i sorgenti digitando:{{{
cmake ..
}}}

 {{{#!wiki note
Se la generazione del '''makefile''' dovesse interrompersi a causa di una [[AmministrazioneSistema/Pacchetti#Dipendenze|dipendenza]] non presente nel sistema, consultare questo [[#Installazione_dipendenze|paragrafo]].
}}}

= Installazione dipendenze =
Linea 109: Linea 84:
=== Con il nome del file === == Con il nome del file ==
Linea 125: Linea 100:
=== Con nome del pacchetto === == Con nome del pacchetto ==
Linea 150: Linea 125:
make clean sudo make clean
Linea 156: Linea 131:
= Disinstallazione = = Rimozione =


Guida verificata con Ubuntu: 22.04 24.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Una peculiarità dei programmi open source è il fatto che viene sempre reso disponibile il codice sorgente, scaricabile sotto forma di archivio compresso con estensione .tar.gz, .tar.bz2, .tar.xz, o .zip. Tale archivio contiene file di testo scritti in un linguaggio di programmazione, detti file sorgente, e altri eventuali file necessari al programma.

Per poter utilizzare un programma ottenuto in questa forma è necessario tradurre i file sorgente in file binari, cioè file comprensibili ed eseguibili da un computer. Questa operazione è detta compilazione e si basa sulle istruzioni contenute nel makefile. Completata la compilazione è possibile eseguire l'effettiva installazione del programma, ovvero la copia dei file nella corretta posizione all'interno del file system.

Preparativi

  1. Installare il pacchetto build-essential.
    Per programmi basati su KDE o Qt, installare il pacchetto cmake.

  2. Estrarre il pacchetto dei sorgenti nella propria Home.

Per semplicità consideriamo che i sorgenti siano all'interno della cartella sorgenti all'interno della propria Home.

Più in generale per mantenere ordinata la propria Home è consigliabile creare una sottocartella specifica per le compilazioni.

Generazione del makefile

Il makefile è un file il cui contenuto dipende dalla configurazione del sistema in cui si intende installare il programma. Proprio per questo motivo, tale file non può essere distribuito insieme ai sorgenti ma va generato direttamente sul sistema di destinazione.

Di seguito sono descritti, in linea generale, i due metodi più comuni per generare il makefile, ovvero mediante lo scritp di configurazione o del programma Cmake. Attenersi alle istruzioni specifiche per ogni programma, di solito contenute in file di testo allegati e/o distribuiti insieme ai sorgenti, denominati INSTALL, README, readme.md o altri nomi simili.

Script di configurazione

  1. Aprire il terminale e spostarsi nella cartella in cui sono stati estratti i sorgenti digitando il seguente comando:

    cd sorgenti
  2. Dare i permessi di esecuzione allo script di configurazione digitando il seguente comando:

    chmod +x configure

    Se il file avesse un nome differente, ad esempio configure.sh, ripetere il comando col nome corretto.

  3. Avviare lo script di configurazione digitando il seguente comando:

    ./configure

    Se la generazione del makefile dovesse interrompersi a causa di una dipendenza non presente nel sistema, consultare il paragrafo Installazione dipendenze.

Accorgimenti

  • Spesso per migliorare la compressione dell'archivio compresso contenente il codice sorgente, lo script di configurazione configure e il file Makefile vanno creati eseguendo prima lo script autogen.sh con il comando:

    ./autogen.sh
  • Quasi sempre lo script di configurazione mette a disposizione l'opzione --prefix=path che permette di scegliere in quale directory allocare il programma che si va compilando. Nell'uso più frequente di questa opzione il comando diventa:

    ./configure --prefix=/usr
  • Per ottenere un elenco delle ulteriori opzioni messe a disposizione dallo script digitare l'opzione -h oppure consultare i file INSTALL o README forniti con il sorgente.

Cmake

Per programmi basati su KDE o Qt la generazione del makefile è generalmente affidata al programma Cmake.

Il programma Cmake è utilizzabile anche tramite interfaccia grafica. Per maggiori informazioni consultare la pagina CMakeGui.

  1. Creare la cartella build nella cartella in cui sono stati estratti i sorgenti:

    mkdir sorgenti/build
  2. Spostarsi al suo interno:

    cd sorgenti/build
  3. Compilare i sorgenti digitando:

    cmake ..

    Se la generazione del makefile dovesse interrompersi a causa di una dipendenza non presente nel sistema, consultare questo paragrafo.

Installazione dipendenze

Se la creazione del makefile si interrompe a causa di una dipendenza mancante, verrà generato un messaggio di errore che riporta le dipendenze mancanti. Sarà dunque necessario installarle manualmente, differenziando tra il caso in cui il nome del pacchetto non è individuabile e si dispone solo del nome del file e il caso in cui il nome del pacchetto è individuabile.

Con il nome del file

  1. Installare il pacchetto apt-file.

  2. Aprire il terminale.

  3. Creare il database con il comando:

    apt-file update
    Il comando può richiedere del tempo per terminare.
  4. Cercare adesso il pacchetto ignoto con il comando:

    apt-file search <nomefile>
    Il pacchetto richiesto è quello che fornisce il file con il nome esatto. Per installare il suddetto pacchetto seguire la procedura successiva.

Con nome del pacchetto

  1. Avviare il gestore pacchetti.

  2. Cercare il nome del pacchetto (solitamente una libreria con suffisso -dev).

  3. Installare il pacchetto.

    Se sono presenti più versioni dello stesso pacchetto, installare quella del repository main.
    Nel caso il file richiesto sia fornito da due o più pacchetti selezionare quello con «-dev» nel nome.

  4. Riavviare la generazione del makefile mediante lo script di configurazione o il programma Cmake.

Sarà necessario ripetere questa procedura ogni volta che la generazione del makefile viene interrotta da una dipendenza mancante.

Compilazione

Digitare nel terminale il seguente comando:

make

Installazione

  1. Digitare nel terminale il seguente comando:

    sudo make install
  2. Una volta installato il programma, è possibile rimuovere i file compilati dalla cartella dei sorgenti digitando nel terminale il seguente comando:

    sudo make clean

Non eliminare la cartella dei sorgenti né il suo contenuto, in quanto necessari per poter disinstallare il programma come spiegato nel paragrafo Disinstallazione. In alternativa, è possibile eseguire l'installazione servendosi di CheckInstall, il quale permette una differente e più semplice disinstallazione.

Rimozione

Questo metodo di disinstallazione è utilizzabile solo se il Makefile mette a disposizione la relativa opzione uninstall.

Digitare nel terminale il seguente comando:

sudo make uninstall

Ulteriori risorse


CategoryAmministrazione CategoryProgrammazione