Cara terbaik untuk memutakhirkan vim / gvim ke 7.3 di Ubuntu 10.04?


13

Saya harus menggunakan Ubuntu 10,04 di tempat kerja, dan tidak dapat memutakhirkannya. Saya menggunakan Vim / gVim 7.2.

Saya ingin memutakhirkan ke 7.3 (dengan dukungan ekstensi Python dan Ruby). Mana cara terbaik? Tambahkan entri sources.listsdan instal paket 7,3 vim / gvim dari itu, atau bangun dari sumber? Kerugian apa yang akan saya miliki dari setiap pendekatan?

Jawaban:


14

Tempat pertama untuk memeriksa adalah apakah ada backport , tetapi tidak ada , yang tidak mengejutkan karena maverick juga memiliki vim 7.2 .

Hal berikutnya yang harus dicoba adalah jika seseorang memasang repositori dengan paket vim 7.3 di suatu tempat, lebih disukai PPA . Ada banyak PPA dengan vim , termasuk beberapa dengan 7.3 (bukan daftar lengkap).

Jika Anda tidak menemukan paket biner di mana pun atau tidak suka yang Anda temukan, langkah termudah berikutnya adalah mengambil paket source dari natty , yang memiliki vim 7.3. Unduh paket sumber ( .dsc, .debian.tar.gzdan .orig.tar.gz), lalu jalankan

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

Jika semuanya berjalan dengan baik, Anda akan memiliki paket biner untuk distribusi Anda. Jika Anda mengalami dependensi yang hilang atau kesalahan kompilasi, ini harus dipecahkan berdasarkan kasus per kasus.

Hal berikutnya yang harus dicoba adalah mengkompilasi sumber upstream 7.3 dengan kemasan dari versi Ubuntu Anda. Ini memberi Anda paket yang bagus dan bersih, tetapi sedikit lebih terlibat, jadi jika Anda tidak merasa percaya diri dalam melakukan ini tanpa instruksi, saya sarankan Anda hanya mengkompilasi sumber hulu.

Jika Anda akhirnya mengkompilasi sumber upstream, secara default, Anda akan berakhir dengan file di bawah /usr/local, dan itu tidak akan mudah untuk menghapusnya, atau bahkan untuk mengetahui apa yang Anda miliki. Setiap kali Anda menginstal sesuatu tanpa menggunakan manajer paket, saya sarankan menginstal ke struktur direktori yang terpisah dan membuat tautan simbolis di /usr/local(atau ~/usratau apa pun).Stow bagus untuk itu:

  • Instal di bawah /usr/local/stow (atau ~/usr/stowatau di mana pun). Dengan banyak program, Anda dapat menggunakan sesuatu seperti ./configure --prefix=/usr/local/stow/vim-7.3. Ini akan menempatkan biner utama /usr/local/stow/vim-7.3/bin, dan seterusnya.
  • Lari stow vim-7.3 dari /usr/local/stowdirektori. Ini menciptakan tautan simbolis di direktori "normal", misalnya /usr/local/bin/vim -> ../../stow/vim-7.3/bin/vim.
  • Jika Anda ingin menghapus program ini, jalankan saja stow -D vim-7.3 untuk menghapus tautan simbolik, dan hapus /usr/local/stow/vim-7.3.

Ada juga xstow yang mirip, tetapi program yang lebih kuat (salah satu manfaatnya adalah dapat menangani konflik).


Saya tidak pernah melakukan sesuatu seperti membuat paket biner khusus untuk distribusi saya. Jika saya mengkompilasi sumber upstream ke / usr / local, dapatkah saya mengecualikannya setelah jika terjadi kesalahan? Saya belum pernah melakukan hal seperti ini sebelumnya, karena saya takut merusak paket lain (saya sudah melakukan kekacauan ini sebelumnya dengan ubuntu 8.04 di sini, semua instalasi python saya baru saja diperbaiki)
Seseorang masih menggunakan Anda MS-DOS

2
@ Seseorang: Keuntungan memasang paket (dibuat oleh Anda atau orang lain) adalah Anda dapat menghapusnya dengan mudah. Jika Anda mengkompilasi paket, saya sarankan menggunakan (x) stow.
Gilles 'SO- stop being evil'

3
+1. Bagaimana saya belum pernah melihat stow sebelumnya? Ini terlihat sangat berguna.
Steven D

Terima kasih, ini berfungsi seperti pesona di Ubuntu 10.10 dengan sumber 2: 7.3.035 + hg ~ 8fdc12103333-1ubuntu7 dari tautan natty Anda! Aku harus melakukannya apt-get install python3-dev. Btw. untuk semua yang bertanya-tanya, Anda dapat menginstal debs menggunakan sudo dpkg -i *.debdan mungkin menghapus paket vim7.2 sebelumnya.
Juve

Satu-satunya masalah yang saya lihat adalah bahwa Anda perlu mengatur runtmepath vim untuk tidak menjadi /usr/local/stow/vim-7.3/share/vimdirektori melainkan sesuatu seperti /usr/local/share/vimdirektori. Saya pikir Anda bisa melakukannya dengan --with-global-runtimepath=/usr/local/share/vimtetapi saya bisa saja salah.
docwhat

3

Bangun dari sumber. Itu akan lebih cepat. Mencoba menemukan dan mengaktifkan repositori untuk instalasi satu kali saja seperti itu hanya akan membuat Anda pusing.


4
Tidak, mendapatkan repositori (jika ada) lebih cepat. Membangun paket tidak selalu lebih cepat, tetapi untuk program-program dengan banyak opsi kompilasi (vim adalah satu) mendapatkan langkah-langkah membangun distribusi direkomendasikan, karena jauh lebih mungkin untuk memberi Anda konfigurasi yang Anda sukai. Membangun sebuah paket juga merupakan kemenangan besar jika Anda ingin menginstal pada beberapa mesin.
Gilles 'SO- stop being evil'
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.