Installare make ubuntu. L'incantevole magia di configure, make e make install. Non ho tempo per occuparmi di questo, farei meglio a rifare l'installazione, tutto è semplice e chiaro

Ciao a tutti!

Questa è una piccola nota per i principianti di Linux su cosa significano questi tre grandi comandi ea cosa servono. Cominciamo, come si suol dire, dall'inizio. La maggior parte dei programmi deve essere compilata prima dell'uso, cioè convertita da testo leggibile dall'uomo in un insieme di uno e zeri comprensibile a un computer. Il processo è suddiviso condizionatamente in tre fasi: configurazione (configure), assemblaggio (make) e installazione (make install). Dettagli sotto il taglio 🙂

./configure

Questo comando cerca le librerie e i file di intestazione necessari alla compilazione (questo vale per i programmi scritti parzialmente o completamente in C/C++ e linguaggi simili), oltre a impostare parametri speciali o collegare librerie speciali, se ./configure troverà tutto ciò di cui ha bisogno, creerà Makefile- il file necessario per costruire il programma

È possibile configurare i parametri del configuratore utilizzando le chiavi e gli argomenti di queste stesse chiavi, ad esempio:

./configure --prefix=/opt/my_program

Con una chiave --prefisso= Puoi specificare una directory che in seguito fungerà da prefisso per il tuo programma (ovvero la directory root). Ciò è dovuto al fatto che nel mondo Linux e non solo, esiste una speciale Gerarchia del File System (HFS) secondo la quale qualsiasi programma deve essere compilato e installato per funzionare senza errori.

Esistono tre prefissi principali nel file system su cui è configurata la maggior parte dei programmi, vale a dire:

  • / - la directory principale del sistema operativo, la cosiddetta ROOT
  • /usr - directory in cui si trovano le applicazioni dell'ambiente utente
  • /usr/local - una directory aggiuntiva per i programmi utente compilati manualmente, specificatamente per sistema operativo non si è trasformato in una discarica

Se apri una di queste directory, puoi vedere una struttura molto simile, almeno ci saranno cartelle: bin, ecc., include, libs, sbin.

Se corri ./configure senza chiavi, il prefisso predefinito (la directory in cui verrà installato il programma compilato) sarà /usr/locale, ricorda questo se non puoi eseguire il tuo programma, potresti non avere un percorso in SENTIERO.

Tranne la chiave --prefisso nel configuratore, di norma, ci sono molte altre chiavi, puoi vederle tutte se esegui:

./configure --help

Fare

Il più importante e semplice comando/programma da cui si avvia la procedura di compilazione dell'applicazione codice sorgente. Per il tuo lavoro questo programma utilizza file speciali Makefile, che descrivono in dettaglio il processo di costruzione dell'applicazione con tutti i parametri che abbiamo specificato al configuratore. Il risultato dell'esecuzione riuscita del comando make sarà il programma compilato nella directory corrente.

fare installare

Questo comando esegue un'installazione diretta dell'applicazione nella directory specificata in fase di configurazione, dopo aver eseguito il comando make install, è possibile eseguire il programma appena installato.

Epilogo

Per non scrivere tre comandi a turno, puoi scriverli in una riga:

./configure && make && make install

&& è un operatore AND che deriva dal linguaggio C/C++, tuttavia, dal punto di vista della shell, significa che il comando successivo dovrebbe essere eseguito solo se il comando precedente ha avuto successo, questo è molto comodo se una delle fasi termina con un errore.

Infatti, make install può anche compilare, perché l'attività di installazione dipende dall'attività all (ovvero, compilando direttamente l'applicazione), il che significa che il passo make può essere saltato e solo due comandi possono essere eseguiti se scritti su una riga:

./configure && make install

Buona fortuna a te! E grazie per aver letto!

La linea di fondo è che questo comando sotto forma di "make install" o "sudo make install" non può essere utilizzato nelle distribuzioni moderne.

Ma dopotutto, gli autori dei programmi nei manuali di installazione scrivono che è necessario utilizzare questo comando, si potrebbe dire. Sì, scrivono. Ma questo significa solo che non sanno quale kit di distribuzione hai, e se si tratta affatto di un kit di distribuzione, forse ti sei unito a una setta e hai fumato leggendo LFS e ora hai deciso di compilare la loro creazione sotto il tuo sistema ctonio. E make install è universale, anche se spesso la strada sbagliata fallo.

Digressione lirica

Come sapete, per il normale funzionamento, la maggior parte del software non solo deve essere compilata, ma anche correttamente installata sul sistema. I programmi si aspettano di trovare i file di cui hanno bisogno in determinati posti e questi posti nella maggior parte dei sistemi *nix sono codificati nel codice in fase di compilazione. Oltre a questo aspetto, la principale differenza tra il processo di installazione in linux/freebsd/whatever e quello in Windows e MacOS è che il programma non si limita a mettere un mucchio di file in una directory separata in Program Files o /Applications, ma “ si diffonde” sull'intero file system. Le librerie vanno in lib, i file eseguibili in bin, le configurazioni in ecc., vari dati in var e così via. Se improvvisamente hai bisogno di aggiornarlo, allora tutto questo deve prima essere pulito in qualche modo, perché. utilizzando nuova versione i resti di file di quello vecchio possono portare a conseguenze completamente imprevedibili, spesso cattivo. La probabilità di questo evento non è così grande, ma ne hai bisogno su un server di combattimento?

E allora?

Quindi, se hai eseguito l'installazione direttamente tramite make install, è normale rimuovere o aggiornare il software, molto probabilmente non puoi. Inoltre, è probabile che l'installazione di una nuova versione su quella vecchia lo faccia sovrascriverà le tue modifiche nelle configurazioni. make install fa esattamente quello che gli viene detto: installa i file nei posti giusti, ignorando il fatto che qualcosa è già lì. Dopo questo processo, è impossibile ottenere assolutamente alcuna informazione su cosa è stato messo e dove in una forma digeribile. A volte, ovviamente, il Makefile supporta l'azione di disinstallazione, ma questo non è così comune, e non è un dato di fatto che funzioni correttamente. Inoltre, l'archiviazione dell'albero decompresso dei sorgenti e delle regole di assemblaggio per la disinstallazione è in qualche modo strano.

Come combattere?

Poiché i pacchetti nelle distribuzioni tendono ad essere aggiornati a volte, per risolvere questo problema, hanno escogitato qualcosa come un gestore di pacchetti. Quando lo si utilizza, l'installazione va in questo modo:
  1. viene preso un archivio appositamente formato
  2. da esso vengono estratte informazioni su cos'è, quale versione è, da cosa dipende, con cosa è in conflitto, se è necessario eseguire alcuni script per installare / rimuovere / configurare, ecc.
  3. Esecuzione dei passaggi di installazione diretta
  4. Tutti i dati su dove e cosa è stato consegnato vengono aggiunti al database del gestore pacchetti.

In questo caso, durante l'aggiornamento, è possibile rimuovere in modo indolore l'eccesso e allo stesso tempo vedere se i file contrassegnati come configurazione sono cambiati nel sistema e chiedere cosa fare se il loro contenuto è diverso nella nuova versione. Inoltre, il gestore pacchetti non sovrascriverà i file di un pacchetto durante l'installazione di un altro. In generale, può fare molte cose utili.

Se inconsapevolmente / pigramente hai copiato make install dalle istruzioni, allora i file vengono visualizzati nel sistema di cui il gestore pacchetti non è a conoscenza. Con tutte le conseguenze, se quanto elencato prima non ti basta.

Cosa fare?

Ovviamente puoi configurare l'albero dei sorgenti in modo che l'installazione di tutto e di tutto vada da qualche parte in /opt/mycoolapp/, quindi eliminarlo manualmente se necessario, ma qui possono venire fuori molte cose spiacevoli, a cominciare dal fatto che il programma si aspetta di poter caricare le tue librerie e il caricatore non sa nulla della directory in cui si trovano, finendo con il fatto che l'autore del programma può aspettarsi che, ad esempio, se inserisce un file, diciamo in $prefisso /share/xsessions/, quindi il display manager lo raccoglierà. Per non parlare dei percorsi per pkgconfig e cose del genere.

Quindi è necessario ritirare il pacco.

Non ho tempo di occuparmene, farei meglio a rifare l'installazione, tutto è semplice e chiaro!

Calmati, calmati. È legato alle nostre gambe. Tutto non è così spaventoso e difficile come sembra a prima vista.
checkinstall
Questa meravigliosa utility, quando viene eseguita al posto di make install, farà alcune domande, dopodiché compilerà e installerà il pacchetto stesso. Tutto, durante l'aggiornamento, non avrai problemi con la pulizia della vecchia spazzatura.
Creazione manuale di un pacchetto deb
Se non sei propenso a fidarti di tale automazione (che a volte fa ancora casino) o se vuoi apportare un paio di modifiche, ma sei ancora pigro per gestire il normale processo di creazione dei pacchetti, puoi creare il pacchetto manualmente. Sto dando un modo per costruirlo per i sistemi basati su Debian, dato che li conosco molto bene. Non è ideologicamente corretto, ma l'output è un pacchetto completamente corretto senza coinvolgere entità aggiuntive. Questo viene fatto nel modo seguente.
Per cominciare, costruiamo il software con i parametri --prefix=/usr e --exec-prefix=/usr precedentemente specificati per configure o autogen.sh.
Successivamente, installiamo in una directory temporanea. Noi scriviamo:

Fakeroot make install DESTDIR=`pwd`/tempinstall
Successivamente, otteniamo l'intero set di file nella directory appena creata. A proposito, ora siamo in un ambiente fakeroot, ad es. puoi cambiare liberamente il proprietario e i diritti di accesso ai file, ma fisicamente rimarrai tu stesso il proprietario nel sistema. Il software all'interno della sessione fakeroot riceverà le informazioni modificate, che consentiranno di impacchettare i file con i diritti corretti nell'archivio.
Successivamente, crea la directory DEBIAN nella "radice del pacchetto" e inserisci in DEBIAN/conffiles un elenco di tutti i file che dovrebbero entrare in /etc:

Cd tempinstall mkdir DEBIAN find etc | sed "s/^/\//" > DEBIAN/conffiles
Quindi creiamo un file DEBIAN/control con il seguente contenuto:

Se necessario, puoi anche creare script preinst, postinst, prerm e postrm.

Ecco fatto, eseguiamo dpkg -b tempinstall e otteniamo tempinstall.deb in output, su cui è possibile impostare dpkg -i e che verrà installato, aggiornato o eliminato correttamente.

Il processo "corretto" di preimpacchettamento del codice sorgente non rientra nell'ambito di questa nota e pertanto non verrà descritto, ma per i tuoi scopi di solito non è necessario.

Conclusione

Come puoi vedere, non c'è assolutamente nulla di complicato qui, ma seguire questi passaggi ti farà risparmiare un numero enorme di problemi in futuro.

Non è raro che i pacchetti richiesti si trovino solo nel formato sorgente, questo articolo descrive come installare un pacchetto dal sorgente.

Spacchettamento

I programmi sono generalmente distribuiti in archivi compressi, questi sono file con estensioni

.tar.gz (a volte .tgz) .tar.bz2

Devi capire la differenza tra un archiviatore e un packer.

Il programma viene utilizzato per archiviare directory e file. catrame; il risultato del suo lavoro è un file con estensione .catrame. In parole povere, questa è una copia sistema di file- directory e file con i loro attributi e diritti di accesso, inseriti in un unico file.

Questo file sarà leggermente più grande della dimensione totale dei file che sono stati archiviati. Pertanto (e forse per un altro motivo) vengono utilizzati i packer, programmi che consentono di ridurre le dimensioni del file senza perdere dati.

Programma catrame può disimballare, quindi non c'è bisogno di chiamare gunzip, oppure puoi semplicemente dirlo al programma catrame che il file deve essere prima decompresso. Ad esempio, il comando

tar-xvf< some_app_name>.tar.gz

disimballare e decomprimere immediatamente. La differenza tra file con estensioni

.tar.gz

.tar.bz2

solo che sono stati utilizzati diversi packer, il programma catrame determina automaticamente il metodo di compressione e in questo caso non sono necessarie opzioni aggiuntive.

Dopo aver decompresso, devi andare nella directory risultante, tutti i comandi descritti di seguito vengono eseguiti nella directory con i testi di origine del pacchetto.

CD< имя_пакета>*

Costruire un pacchetto

Per costruire programmi in GNU/Linux, si usa (principalmente) il programma Fare, che esegue le istruzioni da Makefile, ma poiché ci sono molte distribuzioni GNU / Linux, e sono tutte diverse, per compilare il programma è necessario scrivere separatamente i percorsi per ciascuna distribuzione, dove si trovano librerie e file di intestazione. I programmatori non possono studiare ogni distribuzione e per ciascuna creare separatamente Makefile. Pertanto, hanno ideato configuratori che "studiano" il sistema e, in base alle conoscenze acquisite, creano Makefile. Ma non si sono fermati al configuratore e hanno inventato configuratori di configuratori ... si sono fermati lì

Per compilare, abbiamo bisogno di compilatori: sono scritti nelle dipendenze del pacchetto build-essenziale, quindi è sufficiente installarlo con tutte le dipendenze. Ancora necessario autoconf E automake.

Quindi, per costruire qualcosa dal sorgente, devi prima costruire il configuratore; come costruire il configuratore è descritto nel file configure.in. Per assemblare il configuratore, devi eseguire

./bootstrap ./autogen.sh

Se non ci sono tali script nell'archivio, puoi eseguire i seguenti comandi in sequenza:

aclocal autoheader automake --gnu --add-missing --copy --foreign autoconf -f -Wall

Tutti questi comandi utilizzano il file configurare.in. Dopo aver eseguito questi comandi, verrà creato un file configurare. Successivamente, è necessario eseguire il configuratore per verificare la disponibilità di tutte le dipendenze, nonché installare opzioni di build aggiuntive (se possibile) e visualizzare il risultato dell'installazione (opzionale - potrebbe non essere)

./ configura

Il configuratore costruirà un Makefile in base alle conoscenze acquisite e al file makefile.am. Puoi passare al configuratore le opzioni previste nei sorgenti del programma, che ti permettono di abilitare/disabilitare alcune funzionalità del programma, solitamente puoi informarti su di esse con il comando

./configure --help

C'è anche una serie di opzioni standard, come

Prefisso=

Che specifica quale directory utilizzare per l'installazione. Per Ubuntu di solito

--prefix=/usr --prefix=/usr/local

SENZA taglio alla fine! Ora puoi avviare il processo di creazione del programma stesso con il comando

Fare

Per l'assemblaggio sono sufficienti i normali privilegi dell'utente. La fine dell'assemblea può essere considerata il momento in cui i comandi nella console cessano di essere eseguiti "caoticamente" e non ci sarà alcuna parola errore. Ora tutto è compilato e pronto per l'installazione.

Installazione

Lo sforzo speso per l'installazione corretta sarà in seguito più che ripagato se il software installato viene rimosso o aggiornato.

Installazione corretta (opzione n. 1)

Installazione tramite l'utility checkinstall. Per installare, esegui

sudo apt-get install checkinstall

Lo svantaggio di questo metodo: checkinstall non comprende tutte le fonti, poiché l'autore del programma può scrivere script di installazione speciali e checkinstall non li capirà.

Per creare e installare un pacchetto deb, devi eseguire

sudo checkinstall

Installazione corretta (opzione n. 2)

Creazione rapida di un pacchetto deb "manualmente".

La principale differenza rispetto al metodo precedente è che in questo caso si crea il pacchetto manualmente e si tiene traccia di tutte le modifiche apportate. Questo metodo è adatto anche a te se i sorgenti non supportano la compilazione del pacchetto con checkinstall.

    Installiamo in una directory temporanea, dove otteniamo l'intero set di file installati:

fakeroot make install DESTDIR =`pwd`/tempinstall

    Creiamo la directory DEBIAN nella "radice del pacchetto" e inseriamo in DEBIAN/conffiles un elenco di tutti i file che dovrebbero entrare in /etc:

cd tempinstall mkdir DEBIAN find etc | sed "s/^/\//" > DEBIAN/ file di configurazione

    Quindi creiamo un file DEBIAN/control con il seguente contenuto:

Pacchetto: nome_pacchetto Versione: 1.2.3 Architettura: amd64/i386/armel/all Manutentore: puoi inserire il tuo nome, puoi spazzatura, ma se lasciato vuoto, allora dpkg giurerà Dipende: qui puoi inserire un elenco di pacchetti separati da virgole. Priorità: opzionale Descrizione: è inoltre necessario inserire qualcosa in modo che non venga generato alcun avviso

    Se necessario, puoi anche creare script preinst, postinst, prerm e postrm.

    Creiamo un pacchetto deb, per il quale eseguiamo:

dpkg -b tempinstall

    Otteniamo l'output tempinstall.deb, che installiamo

sudo dpkg -i tempinstall.deb

Installazione (opzione n. 3)

Installazione errata

Lo svantaggio di questo metodo è che se installi direttamente tramite make install, molto probabilmente non sarai in grado di rimuovere o aggiornare il pacchetto normalmente. Inoltre, l'installazione di una nuova versione su quella vecchia molto probabilmente sovrascriverà le modifiche apportate alle configurazioni. make install fa esattamente quello che gli viene detto: installa i file nei posti giusti, ignorando il fatto che qualcosa è già lì. Dopo questo processo, è impossibile ottenere assolutamente alcuna informazione su cosa è stato messo e dove in una forma digeribile. A volte, ovviamente, il Makefile supporta l'azione di disinstallazione, ma questo non è così comune, e non è un dato di fatto che funzioni correttamente. Inoltre, sarà necessario conservare l'albero dei sorgenti decompresso e compilare le regole per la disinstallazione.

Per installare, devi eseguire

sudo make install

Per rimuovere un pacchetto installato in questo modo, è necessario eseguirlo nella directory principale dei sorgenti del programma (dove è stato eseguito make install).

sudo crea disinstallazione

Errori

Spesso in fase di configurazione, il configuratore segnala che manca questa o quella libreria. Il nome della libreria che riporta non sempre corrisponde al nome del pacchetto in Ubuntu. In base alla mia esperienza, posso consigliarti di cercare in Synaptic il pacchetto desiderato, escludendo il prefisso lib, se ci sono diversi pacchetti che differiscono nel prefisso -dev nel nome, allora devi installare il pacchetto -dev (di solito lo estrae un pacchetto non di sviluppo). Puoi anche cercare utilizzando http://packages.ubuntu.com/ inserendo il nome della libreria nella ricerca del contenuto del pacchetto, allo stesso modo, se vengono trovati dev e non-dev, sono necessari entrambi. Oppure cerca semplicemente su Google.

Software richiesto

I pacchetti con le lettere mm alla fine della descrizione sono pacchetti per programmi C++. L'elenco è per bmpx, ma funzionerà per quasi tutti i programmi GTK2/Gnome. Quindi, se non riesci a compilare, guarda questo elenco e controlla con cosa hai installato.

Compilare:tempo di esecuzione:
Xlibx11-devlibx11-6
Glib MMlibglibmm-2.4-devlibglibmm-2.4-1c2a
GTK+libgtk2.0-dev,gtk-doc-toolslibgtk2.0-0
GTKMMlibgtkmm-2.4-devlibgtkmm-2.4-1c2a
Raduralibglade2-devlibglade2-0
Glade MMlibglademm-2.4-devlibglademm-2.4-1c2a
XMLlibxml2-devlibxml2
XML++libxml++2.6-devlibxml++2.6c2a
Buslibdbus-1-dev,libdbus-glib-1-devlibdbus-1-2,libdbus-glib-1-2
Alsalibasound2-devlibasound2
HALlibhal-dev,libhal-storage-devlibhal1,libhal-storage1
Gaminolibgamin-devlibgamin0
neonlibneon25-devlibneon25
TagLiblibtagc0-devlibtagc0
Avviso di avviolibstartup-notifica0-devlibstartup-notifica0
Aumentolibboost-dev,libboost-filesystem-devlibboost-filesystem1.33.1
MusicBrainzlibmusicbrainz4-devlibmusicbrainz4c2a
Gstreamerlibgstreamer0.10-dev,libgstreamer-plugins-base0.10-devlibgstreamer0.10-0,libgstreamer-plugins-base0.10-0

terminale e comandi

Quante volte ti sei imbattuto nel fatto che la versione richiesta dell'applicazione per la tua architettura non è semplicemente nella distribuzione Ubuntu, ma questo programma è disponibile sul sito Web degli sviluppatori sotto forma di codici sorgente nell'archivio .tar.gz. Penso che questa situazione sia familiare a molti, ma non tutti hanno continuato a cercare modi per risolvere questo problema e hanno semplicemente cercato un altro analogo dell'applicazione o una versione leggermente precedente e hanno continuato a funzionare.

Vorrei aggiungere subito qualche parola per i neofiti di Linux, prima di fare qualcosa da questo articolo, studiate a fondo il terminale ei comandi che servono per lavorarci, leggete mana o materiali in rete.

  • Per build dell'applicazione ovviamente, avremo bisogno di strumenti per sviluppatori, nel nostro caso questo è un compilatore e altri programmi che lo accompagnano, il lavoro principale, ovviamente, sarà svolto dall'utilità make e riga di comando(terminale) sarà come la nostra cucina dove saremo preparare / assemblare / installare la nostra applicazione dalla fonte. In Linux il terminale è disponibile di default, per tua comodità, ovviamente, puoi installarne qualsiasi altro più funzionale a cui sei abituato, ad esempio io uso Guake, ci sono molte possibilità rispetto a quello standard, dove è facile configurare i comandi copia e incolla o qualsiasi testo utilizzando CTRL+C, CTRL+V e molto altro, il che rende più comodo lavorare con la console.
  • 1. Dove iniziare quando si creano applicazioni dal sorgente, è ovviamente scaricare l'applicazione in un archivio tar.gz o tar.bz2, nel mio caso, ad esempio, l'applicazione Gimp 2.9.2, anche se nel nostro caso l'archivio non è in formato tar.gz e tar.bz2, non fa differenza, scaricalo, dopo clic destro topi nell'archivio - Estrarre qui.

Questa è forse la prima fase completata, cosa facciamo dopo? E poi lanciamo il terminale e andiamo alla nostra cartella decompressa con i file:

Cd /home/linux/Downloads/gimp-2.9.2/ls

  • 2. Prima di iniziare la preparazione dei sorgenti per l'assembly, ti consiglio di aprire e familiarizzare con il file INSTALL, troverai molte informazioni utili in dato file descrive come installare l'applicazione, quali comandi è necessario eseguire e molto più interessante. Ora ti consiglio di installare un pacchetto aggiuntivo chiamato auto-apt, che fa un sacco di lavoro di routine per te.
sudo apt-get install auto-apt

Cosa significa fare molto lavoro di routine per me, chiedi se eseguire la configurazione dell'origine dell'applicazione con il prefisso di questo pacchetto, ad esempio, nella forma:

Auto-apt -y esegui ./configure

Naturalmente, puoi eseguire la configurazione senza l'aiuto di questo pacchetto ed eseguire semplicemente il comando:

./configure

Se esegui la configurazione con il prefisso - auto-apt -y run, allora preparazione delle fonti per il montaggio avverrà automaticamente, ovvero questo comando può scaricare e installare automaticamente tutto al posto tuo file necessari e biblioteche e soddisferà tutti dipendenze che sarà richiesto.

  • 3. Nel lavoro reale, non tutto è così liscio, forse in un caso andrà tutto bene e la fase di preparazione delle fonti per il montaggio passerà senza errori, in altri casi, e questi sono probabilmente la maggioranza, incontrerai vari tipi di errori, ad esempio questo o quel pacchetto manca per un'ulteriore preparazione del codice sorgente. Nella maggior parte dei casi viene scritto il nome del pacchetto che manca.

Proviamo ad installare il pacchetto mancante con il comando:

sudo apt-get install nome_pacchetto

Nel caso in cui il pacchetto non venga trovato durante l'esecuzione del comando sopra, molto spesso mi viene in aiuto la seguente combinazione, cercando i pacchetti che ci mancano nella cache:

apt-cache ricerca nome_pacchetto

  • Dopo aver eseguito questo comando, puoi e troverai un pacchetto adatto, capita spesso di non trovare un pacchetto adatto, ma c'è una copia esatta del pacchetto ma con prefisso dev cioè un pacchetto del modulo nome_pacchetto-dev e puoi usarlo per soddisfare le dipendenze.
  • 4. Dopo aver completato con successo la configurazione dei sorgenti per l'assembly, è consigliabile installare il pacchetto checkinstall che semplifica la creazione di un pacchetto di applicazioni per la tua distribuzione.
sudo apt-get install checkinstall

Installato il pacchetto, puoi eseguire il comando:

Controlla installazione -D

  • Attributo -D creerà il pacchetto deb, attribute -R creerà un pacchetto rpm utilizzato nelle distribuzioni Fedora, RHEL, ASP Linux, ALT Linux, Mandriva, openSUSE, inoltre c'è anche un attributo -S che creerà un pacchetto utilizzato da Slackware.

Nel mio caso, eseguo Ubuntu e ho eseguito il comando con -D attributo, quindi l'applicazione verrà assemblata in un pacchetto in formato Deb già pronto, avremo bisogno di alcuni dati di chiarimento, ad esempio, come l'aggiunta di una descrizione al pacchetto, poiché lo stai compilando e, di conseguenza, la descrizione è completamente pulita e , per così dire, ti viene richiesto un breve riferimento, a che tipo di applicazione è questo? . Nel mio caso, come ho verificato, vengono compilati automaticamente anche i seguenti campi:

1 - Sommario: [ EOF ] 2 - Nome: [ gimp ] 3 - Versione: [ 2.9.2 ] 4 - Rilascio: [ 1 ] 5 - Licenza: [ GPL ] 6 - Gruppo: [ checkinstall ] 7 - Architettura: [ i386 ] 8 - Posizione di origine: [ gimp-2.9.2 ] 9 - Posizione di origine alternativa: 10 - Richiede: 11 - Fornisce: [ gimp ] 12 - Conflitti: 13 - Sostituisce:

  • Come puoi vedere, prima della compilazione, c'è un controllo per vedere se la configurazione è andata a buon fine, se ci sono dipendenze non soddisfatte o altri conflitti, se tutto va bene, allora il pacchetto verrà compilato senza problemi.

L'ho precedentemente installato senza assemblare il pacchetto, eseguendo i comandi:

Crea installa

Se si desidera rimuovere un'applicazione installata, è necessario eseguire il comando:

Effettua la disinstallazione

il comando sopra rimuoverà automaticamente quelli relativi all'applicazione che hai installato e non influenzerà nulla di terze parti, è consigliabile non eseguire le directory ed eseguirlo dalla stessa directory dell'applicazione in cui hai lavorato, ovvero preparato il configurazione, ecc.

Anche se tutto è andato senza errori, ma l'intero processo ha richiesto molto tempo, circa 20 minuti prima di installare gimp dalle fonti, sono riuscito a fare il caffè e osservare ancora il processo di installazione, tutto richiede molto tempo a causa del fatto che devo cartelle diverse scatter file sorgente dell'applicazione, ogni file ha il suo scopo e deve trovarsi in una directory specifica, quindi dopo aver eseguito make install, migliaia di file sorgente vengono installati nelle directory richieste.

Ecco come va l'installazione dell'applicazione dalla fonte, sì, non tutto è così semplice a prima vista, non ho detto che sarebbe stato facile, ma se lo provi, sviluppa molto bene il tuo pensiero e modi per farlo trovare soluzioni in una data situazione, che è anche molto buona.

Probabilmente è tutto, se hai domande sul materiale sopra, o hai provato a installarlo e hai riscontrato errori, chiedi nei commenti al materiale, cercheremo insieme una soluzione.