Pacchetti binari e sorgenti: quale dovresti usare?

Gli utenti di Linux hanno due modi principali per installare programmi: utilizzare un pacchetto predefinito o compilarlo da soli. Di solito scegliamo un pacchetto, ma ci sono momenti in cui dovresti considerare di costruire dal sorgente.

Gli utenti di Linux hanno due modi principali per installare programmi: utilizzare un pacchetto predefinito o compilarlo da soli.  Di solito scegliamo un pacchetto, ma ci sono momenti in cui dovresti considerare di costruire dal sorgente.
Annuncio pubblicitario

Indipendentemente dal gestore di pacchetti Quale Linux Package Manager (e Distro) è giusto per te? Quale Linux Package Manager (e Distro) è adatto a te? Una differenza fondamentale tra le distro Linux principali è il gestore dei pacchetti; le differenze sono abbastanza forti da influenzare la scelta della distro. Diamo un'occhiata a come funzionano i vari gestori di pacchetti. Leggi di più che stai usando, hai due modi per installare programmi su Linux. O usi un pacchetto pre-costruito, o lo compili da solo. Di questi tempi, il primo di solito vince di default. Ci sono, tuttavia, i tempi in cui dovresti considerare l'alternativa.

Quali sono i pacchetti binari?

L'installazione di programmi su Linux è in genere molto diversa dall'installazione su Windows. Piuttosto che scaricare gli installatori dal sito Web di un fornitore, i file vengono recuperati da un repository di programmi, solitamente personalizzati Come personalizzare il desktop LTS di Ubuntu 16.04 Come personalizzare il desktop LTS di Ubuntu 16.04 Malato dell'aspetto predefinito di Ubuntu? È ora di personalizzare Ubuntu come preferisci? Con lo strumento Unity Tweak e alcuni semplici comandi del terminale, puoi rendere il tuo Unity il tuo! Leggi di più per il tuo sistema operativo.

I file per i programmi separati sono archiviati in un formato di archivio Qual è il miglior metodo di compressione dei file? MakeUseOf Test Zip, RAR e altro Qual è il miglior metodo di compressione dei file? MakeUseOf Test Zip, RAR e altro La compressione dei file è un'attività importante e comune che gli utenti richiedono frequentemente ai loro computer. Ridurre le dimensioni di un file facilita l'invio di e-mail o il posizionamento su un'unità flash. Riduce inoltre l'utilizzo della larghezza di banda e ... Continua a leggere. Questo raggruppa tutto in un unico file per un facile accesso in seguito. Ad esempio, Debian usa il formato DEB per memorizzare i loro programmi. Questi pacchetti sono chiamati pacchetti binari .

formato del pacchetto deb

L'installazione richiede un programma speciale per estrarre questi file e metterli sul tuo computer. Vale a dire, il tuo gestore di pacchetti (ad es. APT, Yum e così via). Fa anche altre cose utili, come tenere traccia di quali file sono stati installati e gestire gli aggiornamenti software.

Da dove vengono i pacchetti?

Tutto il software è scritto in righe di testo chiamate codice sorgente. Sono scritti in linguaggi di programmazione specifici 6 Linguaggi di programmazione più semplici da imparare per principianti 6 Linguaggi di programmazione più semplici da imparare per principianti Imparare a programmare significa trovare la lingua giusta tanto quanto il processo di edificazione. Ecco i primi sei linguaggi di programmazione più facili per i principianti. Leggi di più, come C o C ++. In generale, tuttavia, non è possibile raggrupparlo in un archivio e chiamarlo pacchetto. Queste linee devono essere tradotte in una lingua che il tuo computer può capire ed eseguire.

Questo processo è chiamato compilazione Come compilare e installare i file TAR GZ e TAR BZ2 in Ubuntu Linux Come compilare e installare i file TAR GZ e TAR BZ2 in Ubuntu Linux Leggi di più, il risultato finale è la creazione di binari che il tuo computer può eseguire. Sono questi binari che sono memorizzati insieme all'interno di un pacchetto, insieme ad altre cose come i file di configurazione Cosa sono i file di configurazione e come puoi modificarli? Cosa sono i file di configurazione e come è possibile modificarli? La maggior parte delle applicazioni software sono configurate tramite un'interfaccia menu, ma alcune richiedono di fare un passo avanti e di modificare effettivamente un file di testo. Ma come funzionano questi "file di configurazione"? Leggi di più .

Che cosa è l'installazione "dalla fonte"?

La compilazione del codice sorgente non è solo per creare pacchetti. In effetti, la creazione di un tale archivio non è nemmeno necessaria. Fondamentalmente, installare un programma "da sorgente" significa installare qualcosa senza usare un gestore di pacchetti . Compilare il codice sorgente e copiare i file binari sul computer.

Il più delle volte, puoi scaricare il codice sorgente di un progetto da servizi di hosting come GitHub o BitBucket Love GitHub? 4 motivi per cui dovresti ospitare il tuo codice su BitBucket Love GitHub? 4 motivi per cui dovresti ospitare il tuo codice su BitBucket Devi pensare a dove intendi memorizzare il tuo codice. Probabilmente hai sentito parlare di GitHub. Non è sorprendente. GitHub è utilizzato da privati ​​e aziende per ospitare codice, collaborare alla documentazione ... Per saperne di più. I programmi più grandi potrebbero persino ospitarli su un sito web personale. Il codice verrà generalmente compresso in un formato di archivio (noto anche come pacchetto sorgente ).

albero del pacchetto sorgente

Un set speciale di strumenti aiuta ad automatizzare il processo di costruzione. Sui desktop Linux, questo di solito si presenta sotto forma di una linea di comando. Guida rapida per iniziare con la riga di comando di Linux Una guida rapida per iniziare con la riga di comando di Linux Puoi fare un sacco di cose incredibili con i comandi in Linux ed è davvero non è difficile da imparare. Leggi altro programma chiamato make . Il codice sorgente scritto in lingue diverse necessita di compilatori e comandi specifici per cambiarli in file binari. Il programma make si automatizza Come pianificare le attività in Linux con Cron e Crontab Come pianificare le attività in Linux con Cron e Crontab La possibilità di automatizzare le attività è una di quelle tecnologie futuristiche che è già qui. Ogni utente Linux può trarre vantaggio dal sistema di pianificazione e dalle attività dell'utente, grazie a cron, un servizio di background facile da usare. Leggi di più questo processo.

emacs makefile

Per fare ciò, i programmi forniscono make con un makefile che gli dice cosa fare e compilare. Di questi tempi, di solito viene generato automaticamente da un software speciale come CMake. È qui che entra in gioco l'utente. Perché da qui, possono specificare esattamente quali funzionalità vorrebbero compilare nel proprio software.

Dimostrazione rapida

Ad esempio, il comando seguente genera un file di configurazione per Calligra Office Suite Calligra vs LibreOffice: qual è la Linux Office Suite più produttiva? Calligra vs. LibreOffice: qual è la Linux Office Suite più produttiva? Leggi di più usando CMake. Il file creato dice al programma make di compilare solo il componente Writer di Calligra.

cmake -DPRODUCTSET=WORDS -DCMAKE_INSTALL_PREFIX=$HOME/kde/inst5 $HOME/kde/src/calligra 

Fatto ciò, tutto ciò che una persona deve fare è eseguire lo strumento make per compilare e copiare i risultati sul proprio computer. Questo è fatto nel modo seguente:

 make make install 

Mentre questo è lo schema generale per la compilazione dei programmi, ci sono molti altri modi per installare i pacchetti sorgente. Gentoo Gentoo: una distribuzione Linux in cui compili il tuo software ottimizzato Gentoo: una distribuzione Linux in cui compili il tuo software ottimizzato Il gran numero di modi diversi in cui Linux può essere eseguito è sbalorditivo, poiché ci sono molte scelte da fare in giro . Mentre ci sono molte distribuzioni che si basano su .deb ... Read More, ad esempio, ha un modo integrato di gestirlo, rendendo il processo molto più veloce e più facile. Insieme a questo, la costruzione di pacchetti binari richiede qualche passo in più rispetto ai comandi sopra elencati.

Vantaggi dell'utilizzo di pacchetti binari

Se stai usando Linux, è probabile che i programmi che hai installato fossero precompilati. Al giorno d'oggi, è molto più comune dell'utilizzo di pacchetti sorgente. Ci sono alcuni motivi per cui questo è il caso.

Più facile da gestire

I pacchetti binari contengono molto più dei semplici file di installazione compilati. Memorizzano anche le informazioni che facilitano la gestione dei pacchetti La guida ai repository e alla gestione dei pacchetti Ubuntu Guida ai repository e alla gestione dei pacchetti Ubuntu Ulteriori informazioni per tenere traccia di tutti i programmi. Ad esempio, i file DEB (il formato del pacchetto per Debian Debian: Goditi una delle distribuzioni Linux più stabili e affidabili Debian: goditi una delle distribuzioni Linux più stabili e affidabili Ci sono molti utenti Linux che usano distribuzioni come Ubuntu o una delle tante distribuzioni basate su Ubuntu, incluso Linux Mint. Tuttavia, indipendentemente da cosa si sta usando, ... Leggi di più e derivati ​​Debian) contengono anche informazioni importanti come ad esempio gli altri software che il programma deve eseguire, e la sua versione attuale.

formato del pacchetto deb

Questo rende i pacchetti molto più facili da installare. Non è necessario preoccuparsi di quali altri file è necessario installare per eseguire un programma, ad esempio. Poiché il tuo gestore di pacchetti può leggere tali informazioni dal pacchetto stesso, gestisce tutto ciò automaticamente.

Confronta questo con l'installazione dei programmi dalla fonte. A meno che non si compili il codice in un proprio pacchetto binario, si sarà incaricati della gestione di tale software. Dovresti tenere a mente quali altri programmi ti servono per farlo funzionare e installarli tu stesso.

Stabilità migliorata

Gli archivi di pacchetti tendono a testare i loro binari per i problemi e fanno del loro meglio per correggerli quando appaiono. Ciò può portare a una migliore stabilità dei programmi, cosa che potrebbe accadere a una persona che ha installato dalla fonte.

Ad esempio, ci sono un certo numero di pacchetti nei repository di Debian a cui sono state applicate correzioni. Questo può anche includere programmi di grandi dimensioni come i browser Web. Stai usando il miglior browser Web per Linux nel 2016? Stai usando il miglior browser Web per Linux nel 2016? L'uso del browser "sbagliato" può portare a molti mal di testa inutili, sprechi di produttività e persino perdita di dati. Quindi quale browser è il migliore per il tuo computer Linux? Scopriamolo. Leggi di più !

patch di debian

Insieme a questo, i pacchetti di solito devono rispettare un rigido insieme di regole per garantire che funzionino sul tuo sistema. Sia Debian che Ubuntu hanno un manuale di policy, come molti altri sistemi operativi Linux.

Alcuni programmi si basano anche su versioni diverse della stessa dipendenza software da eseguire. I repository di pacchetti fanno del loro meglio per risolvere questi conflitti, quindi non devi preoccuparti di questo.

Vantaggi dei pacchetti di origine di compilazione

Installare programmi dalla fonte non è qualcosa che tutti devono fare. In effetti, è meglio se ti attacchi con pacchetti binari. Anche così, ci sono ancora alcuni vantaggi nell'usare questo modo leggermente più coinvolto di installare programmi.

Ultimo software

Uno svantaggio di rendere i programmi più affidabili è che ci vuole tempo per migliorare e risolvere. Di conseguenza, ciò può comportare l'utilizzo di versioni precedenti del software. Per le persone che desiderano i più recenti e più grandi 5 sistemi operativi Linux che offrono aggiornamenti Bleeding Edge 5 Sistemi operativi Linux che offrono aggiornamenti Bleeding Edge Un sistema che migliora e l'aggiornamento ha sempre dei vantaggi, ad esempio guadagni in termini di velocità e sicurezza. Se sei pronto per provare Linux all'avanguardia, qui ci sono alcuni sistemi operativi da considerare. Per saperne di più, potrebbero anche preferire un po 'di instabilità in cambio di esso.

Sebbene esistano sistemi operativi Linux che soddisfano questa esigenza senza compilare programmi, presentano alcuni inconvenienti. Ad esempio, il software che non rilascia frequentemente le versioni dei pacchetti è più difficile da tenere aggiornato Perché si dovrebbe sempre tenere aggiornata l'installazione di Ubuntu [Linux] Perché si dovrebbe sempre tenere aggiornata l'installazione di Ubuntu [Linux] Ulteriori informazioni in un repository, di installare dalla fonte.

Questo perché i pacchetti binari di solito sono fatti da versioni ufficiali dei programmi. Di conseguenza, le modifiche tra queste versioni non vengono generalmente prese in considerazione. Compilando il tuo software dal sorgente, puoi beneficiare immediatamente di queste modifiche.

È anche possibile che il tuo sistema operativo Linux non abbia il software che vuoi pre-creato per te. In questo caso, l'installazione dal sorgente è l'unica opzione.

Prendi e scegli

Un altro vantaggio dell'utilizzo dei pacchetti sorgente è che si ottiene un maggiore controllo sui programmi che si installano. Quando si esegue l'installazione da un repository binario, si è limitati nel modo in cui è possibile personalizzare i pacchetti.

Ad esempio, guarda FFmpeg, il convertitore audio e video basato su riga di comando 10 ottime app per convertire file audio e video in Linux 10 ottime app per convertire file audio e video in Linux Ulteriori informazioni. Per impostazione predefinita, viene fornito con un numero enorme di funzionalità, alcune delle quali non si potrebbe nemmeno toccare. Ad esempio, il supporto audio JACK è disponibile in FFmpeg, anche se questo software è solitamente utilizzato negli ambienti di produzione 6 Linux Distros Progettato per artisti, musicisti ed editori 6 Linux Distros Progettato per artisti, musicisti ed editori Leggi di più.

caratteristiche di ffmpeg

Compilare FFmpeg ti permette di rimuovere le cose che non vuoi, lasciandolo più leggero e adattato alle tue esigenze. E lo stesso vale per altri programmi pesanti.

Quando le risorse sono scarse, la rimozione delle funzionalità può essere un ottimo modo per alleggerire il carico. Non c'è da meravigliarsi se Chrome OS La Sfida Chrome OS: un nuovo utente su un Chromebook Sfida Chrome OS: un nuovo utente su un Chromebook A cosa servono i Chromebook per chi è abituato a una configurazione Windows o Mac? Come nuovo arrivato a Chrome OS, sono qui per dirtelo. Leggi altro, trovato su molti computer di fascia bassa, è basato su Gentoo Linux. Gentoo, essendo basato su sorgenti, compila molti dei suoi software, rendendo potenzialmente questi sistemi molto più leggeri.

Perché non installare con entrambi?

Anche se probabilmente non vorrai compilare pacchetti su base giornaliera, è qualcosa di utile da tenere a mente. Se non trovi abbastanza bene i tuoi repository software, ricorda che c'è un altro modo più vecchio di installare le cose.

Hai mai dovuto compilare un software prima? Perché?

Credito d'immagine: Andrii Symonenko tramite Shutterstock.com

In this article