Il modo migliore per aggiornare vim / gvim a 7.3 in Ubuntu 10.04?


13

Devo usare Ubuntu 10.04 al lavoro e non posso aggiornarlo. Sto usando Vim / gVim 7.2.

Voglio aggiornarlo a 7.3 (con supporto estensione Python e Ruby). Qual è il modo migliore? Aggiungere una voce sources.listse installare un pacchetto 7.3 vim / gvim da esso o compilare dal sorgente? Quali sono gli svantaggi di ogni approccio?

Risposte:


14

Il primo posto da controllare è se c'è un backport , ma non c'è , il che non è sorprendente dal momento che Maverick ha anche Vim 7.2 .

La prossima cosa da provare è se qualcuno ha creato un repository con pacchetti vim 7.3 da qualche parte, preferibilmente un PPA . Esistono molti PPA con vim , inclusi alcuni con 7.3 (non un elenco esaustivo).

Se non trovi un pacchetto binario da nessuna parte o non ti piacciono quelli che trovi, il prossimo passo più semplice è prendere il pacchetto sorgente da natty , che ha vim 7.3. Scarica il pacchetto sorgente ( .dsc, .debian.tar.gze .orig.tar.gz), quindi esegui

apt-get install build-essential fakeroot
apt-get build-dep vim
dpkg-source -x vim_7.3.035+hg~8fdc12103333-1ubuntu2.dsc
cd vim-7.3.035+hg~8fdc12103333
# Edit debian/changelog to add an entry with your name and “recompiled for lucid”
dpkg-buildpackage -rfakeroot -us -uc -b -nc

Se tutto va bene, avrai pacchetti binari per le tue distribuzioni. Se si verificano dipendenze mancanti o errori di compilazione, questo deve essere risolto caso per caso.

La prossima cosa da provare è compilare l'origine 7.3 a monte con il pacchetto dalla tua versione di Ubuntu. Questo ti dà un pacchetto bello e pulito, ma è un po 'più coinvolto, quindi se non ti senti sicuro di farlo senza istruzioni ti consiglio di compilare il sorgente upstream.

Se finisci per compilare la sorgente upstream, per impostazione predefinita, finirai con i file sotto /usr/locale non sarà facile disinstallarli o anche sapere cosa hai. Ogni volta che installi qualcosa senza usare il gestore pacchetti, ti consiglio di installarlo in una struttura di directory separata e di creare collegamenti simbolici /usr/local( ~/usro qualunque cosa). Stow è carino per questo:

  • Installa sotto /usr/local/stow(o ~/usr/stowo ovunque). Con molti programmi, puoi usare qualcosa del genere ./configure --prefix=/usr/local/stow/vim-7.3. Questo metterà il binario principale in /usr/local/stow/vim-7.3/bine così via.
  • Esegui stow vim-7.3dalla /usr/local/stowdirectory. Questo crea collegamenti simbolici nelle directory "normali", ad es /usr/local/bin/vim -> ../../stow/vim-7.3/bin/vim.
  • Se vuoi disinstallare questo programma, esegui semplicemente stow -D vim-7.3per rimuovere i collegamenti simbolici ed eliminali /usr/local/stow/vim-7.3.

C'è anche xstow che è un programma simile, ma più potente (uno dei suoi vantaggi è che può affrontare i conflitti).


Non ho mai fatto qualcosa come creare un pacchetto binario specifico per la mia distribuzione. Se compilo il sorgente upstream in / usr / local, posso semplicemente escluderlo dopo che qualcosa va storto? Non ho mai fatto qualcosa del genere prima, perché ho paura di rompere altri pacchetti (ho già fatto questo casino con Ubuntu 8.04 qui, tutte le mie installazioni di Python erano appena state corrotte)
Qualcuno ti usa ancora MS-DOS,

2
@Somebody: il vantaggio di installare un pacchetto (creato da te o da qualcun altro) è che puoi disinstallarlo facilmente. Se compilate il pacchetto, vi consiglio di usare (x) stow.
Gilles 'SO- smetti di essere malvagio' il

3
+1. Come non ho mai visto prima stow? Sembra incredibilmente utile.
Steven D,

Grazie, ha funzionato come un incantesimo in Ubuntu 10.10 con le fonti 2: 7.3.035 + hg ~ 8fdc12103333-1ubuntu7 dal tuo natty link! Dovevo solo apt-get install python3-dev. Btw. per tutti coloro che si chiedono, è possibile installare i debs usando sudo dpkg -i *.debe magari rimuovere i pacchetti vim7.2 prima.
Juve

L'unico problema che vedo è che è necessario impostare Vim Runtimepath in modo che non sia la /usr/local/stow/vim-7.3/share/vimdirectory ma piuttosto qualcosa come la /usr/local/share/vimdirectory. Io credo che si può fare con --with-global-runtimepath=/usr/local/share/vim, ma potrei sbagliarmi.
docwhat,

3

Costruisci dalla fonte. Sarà più veloce. Cercare di trovare e abilitare un repository per un'installazione una tantum del genere ti farà solo venire il mal di testa.


4
No, ottenere un repository (quando ce n'è uno) è più veloce. Costruire un pacchetto non è necessariamente più veloce, ma per i programmi con molte opzioni di compilazione (vim è uno) si consiglia di ottenere le fasi di compilazione della distribuzione, perché è molto più probabile che ti dia una configurazione con cui ti senti a tuo agio. La creazione di un pacchetto è anche una grande vittoria se si desidera installare su più macchine.
Gilles 'SO- smetti di essere malvagio' 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.