Modo corretto di costruire da fonti


12

Ho effettuato l'accesso come utente normale. Dovrei usare:

./configure && make && make install

o

sudo ./configure && sudo make && sudo make install

o

./configure && make && sudo make install

durante l'installazione di pacchetti.

E qualcuno potrebbe spiegare le differenze.

Voglio che tutti gli utenti possano usarlo.


Ancora meglio ... unix.stackexchange.com
mxmissile,

1
È necessario installare software da repository Ubuntu o PPA. Se ti sei imbattuto in qualcosa che non è ancora impacchettato, sentiti libero di prendere in considerazione l'idea di avviare il tuo PPA. In questo modo manterrai pulito il tuo sistema, fornirai pacchetti anche per altre persone e poiché il bonus gratuito alla fine otterrà più tester.
vtest

Risposte:


15

Il 3 ° versione è corretta, ./configure && make && sudo make install. Crea e configura può essere fatto come un normale utente poiché non stai cercando di scrivere file in una directory di sistema, make installspesso proverà a copiare i binari in / usr / bin o / bin che richiede l'accesso root per scrivere.


... e su cui non si dovrebbe scrivere perché il loro contenuto è gestito dalla gestione dei pacchetti.
reinierpost,

2
Potresti persino arrivare al punto di creare un utente local, quindi emettere un chown -R local /usr/locale quindi installare il software utilizzando in sudo local make installmodo da essere avvisato quando un pacchetto scrive da qualche altra parte che sotto /usr/local(che può rovinare la gestione del pacchetto).
reinierpost,

Se il pacchetto è costruito in conformità con gli standard di codifica gnu, un 'configura && make && sudo make install' non elaborati verrà installato solo in / usr / local e non in / usr / bin o / bin.
William Pursell,

4

Hai bisogno dell'ultima versione:

./configure && make && sudo make install

La configurazione e la creazione possono avvenire nella cartella locale ma per l'installazione sono necessarie le autorizzazioni di root. Questo comando lo compie.

Assicurati che l'applicazione che stai installando non sia già nel gestore pacchetti. In genere è molto più semplice utilizzare il software precompilato per il proprio sistema piuttosto che cercare tutte le dipendenze per compilare qualcosa.


2

È necessario utilizzare i privilegi minimi che funzionano. Questo è di solito:

./configure && make && sudo make install


2

Gli && sono analizzati dalla shell originale. Mettere un sudo in primo piano influisce solo sulla configurazione. L'ultima opzione ha più senso, perché configurerà e compilerà come un utente normale e quindi installerà i risultati affinché tutti possano usarli.

Un avvertimento è che alcuni script di configurazione rileveranno che sono in esecuzione come utenti non root e creeranno makefile che si installano in $ HOME o simili. In tal caso, dovresti anche "sudo ./configure". Se si esegue la configurazione o si esegue come root, si avrà il fastidio di alcuni file di proprietà di root nella directory dell'utente normale.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.