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.2Il ciclo configure / make / install
Il processo di compilazione GNU classico prevede tre passaggi:
./configure— controlla il sistema e prepara la compilazionemake— compila il codicesudo make install— copia i binari nella posizione appropriata
Questo schema ha decenni, ma è ancora molto diffuso.
./configure
make
sudo make installScegliere 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 installGestire 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
./configureDisinstallare 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/toolPacchetti 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 htopPacchetti 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.GIMPScegliere 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
--prefixpulito 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--prefixper mantenerlo isolato - Snap:
snap installper 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
- Gestori di pacchetti APT e YUM
- Installazione e aggiornamento del software
- Gestione dei repository software
- Compilare dal codice sorgente e usare Snap/Flatpak