Compilare l'origine in un pacchetto DEB


34

Ho sempre avuto un problema con l'installazione e la rimozione di software compilato, quindi ho deciso di creare software dall'origine in un pacchetto .deb per facilitare l'installazione / rimozione.

Vorrei sapere un modo semplice e breve per compilare il sorgente in un pacchetto .deb, come utente finale .

Ho provato:

  • ubucompilator , che non ha funzionato per me
  • Questo come guidare, ma l'ho trovato troppo a lungo

1
Ubucompilator è un progetto interessante e apprezzo i loro sforzi fino ad oggi. Tuttavia, come hai scoperto, fornisce solo un front-end della GUI a quattro o cinque comandi di basso livello. E, NO, non puoi usarlo per creare facilmente un pacchetto '.deb' corretto.
david6,

Risposte:


47

checkinstall fa quello che vuoi ottenere: monitora quali file vengono installati e li inserisce in un pacchetto .deb, che può quindi essere installato e rimosso

Installalo con

apt-get install checkinstall

quindi esegui la normale installazione dalla procedura di origine, sostituendo 'sudo make install' con 'sudo checkinstall':

  ./configure
  make
  sudo checkinstall

Riferimento: https://help.ubuntu.com/community/CheckInstall



6

Ho usato il make checkinstallcomando in diverse occasioni per creare un .debpacchetto su una macchina da installare sugli altri miei server. È un modo rapido per installare una versione beta. Funziona, ma dovrebbe essere usato con cautela. Ci sono insidie ​​per l'utente che non comprende le molte funzioni del .debpacchetto.

Ho venti server che usano le stesse app cresciute in casa. L'aggiunta del supporto di compilazione e del compilatore a ciascun host non è così difficile.

L'immissione dei comandi per scaricare e compilare una nuova versione venti volte richiede tempo. L'alternativa è caricare uno script per eseguire l'attività e quindi eseguire lo script. Ma spesso è più semplice aggiornare le applicazioni usando il .debfile creato con checkinstall.


0

Il compito di impacchettare un pezzo casuale di codice software in un .deb è piuttosto complicato se il software non è già arrivato in quella forma, soprattutto se paragonato a make, make install. Se vuoi che le cose siano più semplici, penso che stai andando nella direzione sbagliata.

Non sto dicendo che non puoi farlo - gli sviluppatori Debian lo fanno molto. Ma non sembra il modo più semplice per fare quello che vuoi.

Forse dovresti concentrarti maggiormente sull'apprendimento di come "compila" la compilazione e l'installazione di software dal sorgente. A tuo favore è il fatto che tutto ciò che hai installato da solo dovrebbe finire in / usr / local


grazie per il suggerimento, ma so già di compilare software, ne ho tranquillamente compilati alcuni sul mio sistema. L'unica cosa che trovo difficile è aggiornarli o rimuoverli. Quindi ho pensato che un file deb sarebbe stato più utile
Ashu,

Il motivo per cui un pacchetto deb può essere aggiornato o rimosso senza problemi è che qualcuno ha scrupolosamente scritto script che lo fanno, per ogni pacchetto. Inoltre hanno dovuto aggiungere molti altri metadati descrittivi che dpkg può usare per determinare quali file sono. Avrai il tuo lavoro ritagliato per te.
thomasrutter,

1
In realtà, basta andare con la risposta di Floyd. Sembra una soluzione complessivamente migliore, se fa davvero quello che dice di fare!
thomasrutter,

Sì. La soluzione di Floyd è fantastica. Soprattutto ora, è estremamente maturo. Ora non devo costruire dalla fonte su tonnellate di server. :)
Jack_Hu il
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.