0Pricing
Linux Server Deployment & SSH Mastery · Lezione

Compilare dal codice sorgente e usare Snap/Flatpak

Andate oltre il gestore dei pacchetti di sistema: compilate il software dal codice sorgente quando non esiste un pacchetto e usate formati universali come Snap e Flatpak per installare applicazioni moderne indipendentemente dai repository della vostra distribuzione.

Compilare dal codice sorgente e usare Snap/Flatpak è una lezione Linux Server Deployment & SSH Mastery gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Linux Server Deployment & SSH Mastery, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Linux Server Deployment & SSH Mastery include 4 lezioni in totale.

Quando il gestore dei pacchetti non basta

APT e YUM coprono la maggior parte delle esigenze, ma a volte uno strumento non è incluso nei pacchetti, è troppo vecchio nei repository oppure serve una versione specifica. In questi casi ha due opzioni:

  • Compilare il software dal codice sorgente
  • Utilizzare un formato di pacchetto universale come Snap o Flatpak

Questa lezione tratta entrambe le opzioni.

Preparare gli strumenti di compilazione

La compilazione richiede una toolchain: un compilatore, make e le librerie di sviluppo. Su Debian/Ubuntu il metapacchetto build-essential installa i componenti di base.

sudo apt install build-essential
# RHEL/Fedora:
sudo dnf groupinstall 'Development Tools'

Ottenere il codice sorgente

Il codice sorgente viene solitamente distribuito come archivio tar compresso o repository git. Lo scarichi e lo estragga, quindi acceda alla directory.

wget https://example.com/tool-1.2.tar.gz
tar -xzf tool-1.2.tar.gz
cd tool-1.2

Il ciclo configure / make / install

Il processo di compilazione GNU classico prevede tre passaggi:

  • ./configure — controlla il sistema e prepara la compilazione
  • make — compila il codice
  • sudo make install — copia i binari nella posizione appropriata

Questo schema ha decenni, ma è ancora molto diffuso.

./configure
make
sudo make install

Scegliere il prefisso di installazione

Per impostazione predefinita, il software viene installato in /usr/local. Può modificare questa posizione con --prefix per mantenerlo isolato, facilitando così la pulizia.

Installare nella propria directory home evita completamente la necessità dei privilegi di root.

./configure --prefix=/opt/tool
make
sudo make install

Gestire le dipendenze mancanti

Se ./configure si interrompe segnalando una libreria mancante, installi il pacchetto -dev corrispondente. I pacchetti di sviluppo forniscono gli header necessari al codice sorgente per la compilazione.

sudo apt install libssl-dev zlib1g-dev
./configure

Disinstallare le compilazioni dal codice sorgente

Lo svantaggio delle installazioni dal codice sorgente è l'assenza di una disinstallazione automatica. Se il progetto la supporta, esegua make uninstall dalla directory di compilazione. In caso contrario, un --prefix isolato consente di eliminare semplicemente la cartella.

sudo make uninstall
# or, if you used --prefix=/opt/tool:
sudo rm -rf /opt/tool

Pacchetti universali: Snap

I pacchetti Snap includono un'app e le relative dipendenze, quindi funzionano su qualsiasi distribuzione che disponga di snapd. Si aggiornano automaticamente e vengono eseguiti in una sandbox.

sudo snap install htop
snap list
sudo snap remove htop

Pacchetti universali: Flatpak

Flatpak è un altro formato universale, diffuso per le applicazioni desktop e distribuito tramite repository remoti come Flathub. Aggiunga il repository remoto una volta, quindi installi l'applicazione tramite l'ID dell'applicazione.

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install flathub org.gimp.GIMP
flatpak run org.gimp.GIMP

Scegliere il metodo giusto

Scelga l'approccio più adatto:

  • APT/YUM — predefinito, migliore integrazione, aggiornamenti automatici
  • Snap/Flatpak — versioni più recenti, compatibilità tra distribuzioni, esecuzione in sandbox
  • Codice sorgente — ultima risorsa per software non pacchettizzato o compilazioni personalizzate

Preferisca i pacchetti e compili dal codice sorgente solo quando necessario.

Best practice

Installi in sicurezza al di fuori del gestore dei pacchetti:

  • Installi sempre le dipendenze di compilazione prima della configurazione
  • Utilizzi un --prefix pulito per poter rimuovere in seguito le compilazioni dal codice sorgente
  • Verifichi i checksum o le firme dei download
  • Preferisca Snap/Flatpak al codice sorgente quando è disponibile un pacchetto gestito

Verifica rapida

Verifichi le sue conoscenze sull'installazione.

Riepilogo

Ora è in grado di installare software oltre i repository standard:

  • Dal codice sorgente: ./configure → make → make install, con --prefix per mantenerlo isolato
  • Snap: snap install per applicazioni autonome con aggiornamento automatico
  • Flatpak: repository remoti Flathub e ID delle applicazioni

Ricorra a queste opzioni solo quando APT/YUM non è in grado di fornire ciò che serve.

Domande Frequenti

La lezione «Compilare dal codice sorgente e usare Snap/Flatpak» è gratuita?

Sì — il testo completo di «Compilare dal codice sorgente e usare Snap/Flatpak» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Linux Server Deployment & SSH Mastery, passa a CoddyKit PRO. Il corso Linux Server Deployment & SSH Mastery include 4 lezioni in totale.

Cosa imparerò in «Compilare dal codice sorgente e usare Snap/Flatpak»?

Andate oltre il gestore dei pacchetti di sistema: compilate il software dal codice sorgente quando non esiste un pacchetto e usate formati universali come Snap e Flatpak per installare applicazioni m… Eserciti Linux Server Deployment & SSH Mastery con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Linux Server Deployment & SSH Mastery?

Non è richiesta alcuna esperienza precedente. Linux Server Deployment & SSH Mastery su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «Compilare dal codice sorgente e usare Snap/Flatpak»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Linux Server Deployment & SSH Mastery?

Sì. Ogni lezione Linux Server Deployment & SSH Mastery include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Gestori di pacchetti APT e YUM
  2. Installazione e aggiornamento del software
  3. Gestione dei repository software
  4. Compilare dal codice sorgente e usare Snap/Flatpak
← Torna a Linux Server Deployment & SSH Mastery