Ubuntu'da daha yeni bir Vim sürümünü nasıl edinebilirim?


34

Ubuntu'nun paketleri oldukça eski olabilir, ancak bazı masaüstü programları için (Vim gibi) daha yeni sürümler genellikle çeşitli hataları giderdiği için en son sürüme sahip olmayı tercih ederim.

Ubuntu'da oldukça yeni bir Vim sürümünü nasıl edinebilirim?


Belki de Jonathonf'un PPA'si sizin için çalışabilir. Ancak Ubuntu 16.04 kullanıyorsanız daha iyi, çünkü “24 Ekim'den itibaren, kolay bir güncelleme olması durumunda sadece 14.04 için paketleme yapacağım”
joeytwiddle

4
@joeytwiddle PPA'lara sahip olan şey , sisteminize kök erişimi olan Rastgele Bir Yabancılar'a güveniyor olmanızdır ; bu, güvenlik gereksinimlerinize ve paranoya seviyesine bağlı olarak belki de iyi bir fikir değildir (bakınız: PPA'nın güvenli olduğu konusunda sistemimde ve ne eklemek için dikkat edilmesi gereken bazı “kırmızı bayraklar” dir? ve Launchpad PPA'lar gelen yazılım virüs ve arka kapı tehditlerden serbest olduğuna dair herhangi bir garanti var mı? ).
Martin Tournoij

Yanıtlar:


49

Üç farklı seçeneğiniz var:

  • Dağıtım paketlerine en yeni sürümlerin eklenmesini bekleyin. Yeni bir dil öğrenmek ya da beklerken çıplak ellerinizle bir gemi inşa etmek isteyebileceğinizi unutmayın.

Birkaç yıl beklemek sizin için iyi değilse, aşağıdaki iki seçeneğiniz vardır:

  • En son sürümü içeren bir PPA kullanın:
    • Artıları:
      • Yapması kolay.
      • Tamamen otomatik.
      • Vim'i başka bir yazılım olarak kuralım.
    • Eksileri:
      • Temel olarak tam bir yabancıya kök ayrıcalıkları veriyorsunuz.
      • Bu yöntem yalnızca Ubuntu ve PPA sistemini kullanan türetilmiş dağıtımlarda çalışır.
  • Vim'i kaynaklardan derleyin:
    • Artıları:
      • Etkinleştirdiğiniz seçeneklerin ince ayarını yaparsınız (gui, Python / Lua desteği vb.).
      • Kanama kenarı versiyonunu alırsınız ve elde etmek için üçüncü bir taraf tutucusuna ihtiyacınız yoktur.
      • Bir yazılımı kaynaklardan nasıl derleyeceğinizi öğrenmek her zaman yararlıdır.
      • Bu bir dağıtım agnostik yöntemdir.
    • Eksileri:
      • PPA seçeneği kadar otomatik değil.
      • Yeni bir kullanıcı için korkutucu olabilir.

İkinci durumda, bu seçenekler için bir prosedür:


PPA

İşte tipsonubuntu.com'da çevrimiçi bir ders (Teşekkürler, yorumlarda öneren @joeytwiddle).

İlk önce bir terminal açın ve aşağıdaki komutu kullanın. Bu, joathonf tarafından tutulan Kişisel Paket Arşivi'ni (PPA) size repolara ekler ve Ubuntu'nun Vim'i nerede arayacağını bilmesini sağlar:

sudo add-apt-repository ppa:jonathonf/vim

Burada bunu yapmanın, bu PPA'daki komut dosyalarına kök ayrıcalıkları verdiğini, sadece güveniyorsanız yapın . Okumak isteyebilirsiniz PPA'nın sistemime eklenmesi güvenlidir ve dikkat edilmesi gereken bazı "kırmızı bayraklar" nedir? ve Launchpad PPA'lardan gelen yazılımın virüs ve arka kapı tehditlerinden arınmış olduğuna dair herhangi bir garanti var mı? .

Paket listesini güncelleyin, böylece Ubuntu, Vim dosyalarını bulmak için PPA'ya bakacaktır:

sudo apt update

Sonunda vim'i kurun:

sudo apt install vim

Ve tada! Vim yüklü. Bunu GUI paket yöneticisinden de yapabileceğinizi unutmayın.

Bu yeni Vim sürümleri ile sadece PPA mevcut olmadığını Not, daha bulmak için favori arama motoru kullanmak (ve edebilirsiniz yapmak sisteminizde root erişimi olan internetten bazı yabancı güveniyorsun unutmayın).


Kaynaklardan inşa

İkinci bir seçenek de Vim'i kaynaklardan oluşturmaktır. Bu, bazı ilave manipülasyonlara işaret eder ve yeni bir kullanıcı için korkutucu olabilir, ancak kalıcı yapıyı elde etmenin en iyi yoludur.

Bu prosedürde size yol gösterecek birkaç çevrimiçi kaynak vardır:

Genel bir prosedür aşağıdadır, ihtiyaçlarınızı karşılamak için ince ayar yapmanız gerekebilir, ancak asıl fikir burada:

İlk önce bazı bağımlılıkları kurmanız gerekebilir. Örneğin bu komutu kullanın (YouCompleteMe wiki tarafından önerilen):

sudo apt-get update
sudo apt-get install libncurses5-dev libgnome2-dev libgnomeui-dev \
    libgtk2.0-dev libatk1.0-dev libbonoboui2-dev \
    libcairo2-dev libx11-dev libxpm-dev libxt-dev python-dev \
    python3-dev ruby-dev lua5.1 lua5.1-dev libperl-dev git

Her şeye ihtiyacınız olmayabileceğini unutmayın: örneğin, Lua'yı kullanmayacaksanız lua5.1-dev, listeye dahil etmeyin .

Düzenle Önceki apt-get installkomutu kullanmak yerine aşağıdakileri kullanabilirsiniz. İhtiyacınız olan bağımlılıkları otomatik olarak ele alma avantajına sahiptir:

sudo apt-get build-dep vim

Ardından kaynakları bilgisayarınıza alın ( gityüklü komutun yüklü olması gerekir apt-get install git):

git clone https://github.com/vim/vim.git

Bu dizine gidin ve son değişiklikleri 'çekin':

cd vim
git pull

git pullZaten değişiklik yaptığınız için bir hata yaşarsanız, değişikliklerinizi 'saklayabilirsiniz' (örneğin geçici olarak kaldırın), değişiklikleri çekin ve ardından değişikliklerinizi geri yükleyin. Bunu yaptıysanız, git'e aşina olduğunuzu ve takip etmek için prosedür sağlamayacağınızı varsayacağım (vim.org belgesinde ayrıntılı olarak verilmiştir).

Daha sonra Vim'i kaynaklardan başka bir yazılım oluşturduğunuz gibi yapabilirsiniz. Src / INSTALL dosyası Vim'i derlemeniz için gereken bilgileri size sağlamalıdır.

Düzenli bir iş akışı şununla başlar:

./configure --with-features=huge --enable-gui=auto

--enable-guiGVim istemiyorsanız kaldırın .

Vim yüklediğiniz makineye root erişiminiz --prefixyoksa, erişim haklarınızın olduğu bir dizini kullanmanıza izin veren seçeneği eklemek isteyebilirsiniz . Örneğin şunları kullanabilirsiniz:

./configure --with-features=huge --enable-gui=auto --prefix=$HOME/local/vim

configureSenaryo etkinleştirmek istediğiniz özellikleri ayarlamak için bir çok fikri alabilir. Çalıştırmak biraz zaman alıyor. Çalışırken hangi özellikleri kontrol ettiğini söyleyen mesajları basar.

Bir kez yapılandırıldığında, programı şununla derleyebilirsiniz:

make

Bazı otomatik kontroller yapmak için isteğe bağlı bir komut bulunmaktadır ( bana tam olarak ne yaptıklarını sorma, her zaman onları atlarım :-) ):

make check

Son olarak Vim'i kurun /usr/local/(bu komut root yetkilerini gerektirir):

sudo make install

Derleme için oluşturulan şimdi gereksiz dosyaları kaldırmak için daha sonra çalıştırabilirsiniz:

make clean
make distclean

Ve işte yeni bir Vim kurulumuyla.

Muhtemelen Ubuntu deposundan kurduğunuz Vim'leri kaldırmak isteyeceksiniz, ancak buna ihtiyacınız yok. Varsayılan olarak, Vim /usr/local/yerine yüklenir /usr/. Yalnızca doğru Vim sürümünü çalıştırdığınızdan emin olun (yani /usr/local/bin/vimdeğil /usr/bin/vim).


1
Bağımlılık konusunda, sudo apt-get build-dep vimkullanımı daha da kolaydır. Aksi taktirde, --prefixhepimizin çok yaygın olduğu bir kök yetkisine sahip olmadığımız hakkında bir not eklerdim.
Luc Hermitte

@LucHermitte bu önerileriniz için teşekkürler. apt-get build-dep vimPPA kurulumunun son aşamasında kullanmak istemenizle ilgili değil mi? Şimdi bu konuda --prefixgerçekten eklemek için önemli bir not: --prefix=/usrtavsiye için güvenli bir yer mi yoksa başka bir rehber (örneğin --prefix=~/bin) tavsiye eder misiniz ?
statox

build-depKomut yerine kullanılabilir sudo apt-get install libncurses5-dev ..... Buna göre --preffix, tipik kullanımı:, --prefix=$HOMEama son zamanlarda kullanıyorum --prefix=$HOME/local/vim. Bu şekilde, bir yazılımı kaldırmak kadar kolaydır rm -rve .profile/.bashrc
Luc Hermitte

@ LucHermitte Tamam prefix. Zira build-depbu emre o kadar aşina olmadığımı söylemek zorundayım, bu yüzden korkarım doğru anlamıyorum: Anladığım kadarıyla apt-get build-dep vimpaketin bağımlılıklarını kurardım vim. Ancak, paket kaynaklarında en yeni vim paketine sahip olmadığımız için (kaynaklardan oluşturduğumuzdan beri) komut doğru bağımlılıkları nasıl kuracak? Vim8'i kaynaklardan oluşturmaya çalışıyorsam ve paket listem vim7.4 içeriyorsa, vim7.4 apt-get build-dep vimbağımlılıklarını yükler mi? (Şu anda test edemiyorum, üzgünüm)
statox

Github'dan alabileceğimiz vim kaynak kodunu derlemek için ihtiyaç duyduğumuz bağımlılıkları kurar. Bu şekilde, Vim kaynak kodunun kullandığı tüm kütüphaneleri izlememiz gerekmez. Derlediğimiz kaynak kodu, bir kütüphanenin paketlenmemiş sürümüne bağlı olmadıkça, bu tamamen iyidir.
Luc Hermitte

2
#!/usr/bin/env bash

sudo apt update

sudo apt install -y git

sudo apt install -y build-essential

rm -fr /tmp/vim

git clone https://github.com/vim/vim.git /tmp/vim

make -C /tmp/vim

sudo make install -C /tmp/vim 

rm -fr /tmp/vim

5
Siteye Hoşgeldiniz! Bunun ne olduğunu, ne yaptığını ve nasıl kullanılacağını açıklamak yardımcı olabilir. Bunu okuyan herkes, kullandığınız komutları veya bash scriptleri, git ve paket yöneticilerini yazarak / kullanarak aşina olmayacaktır. Yaptığınız düzenlemelerden zaten başka bir yerde yapmanın iyi bir iş çıkardığını görebiliyorum!
Zengin

Ne yaptığını bilenler için harika çalışıyor, / usr / local / bin / vim kullanıma hazır. Mevcut / usr / bin / vim'iniz yerinde kaldı.
rshdev

1

Diğer bir seçenek de Homebrew'i Linix'e alternatif bir paket yöneticisi olarak kurmak ve en son vim'i kurmak için kullanmaktır:

brew install vim

Homebrew Özellikleri:

  • Ana dizininize yazılım yükleyebilir ve bu yüzden sudo gerektirmez
  • Ana bilgisayar dağıtımınız tarafından paketlenmemiş yazılımı yükleyin
  • Ana bilgisayar dağıtımınız eski olduğunda yazılımın güncel sürümlerini yükleyin
  • MacOS, Linux ve Windows sistemlerinizi yönetmek için aynı paket yöneticisini kullanın

Sitemize Hoşgeldiniz David! Homebrew'ın bu problemi nasıl çözdüğünü görme konusunda sorun yaşıyorum: Homebrew depoları apt'lerden daha güncel mi?
statox

@statox Evet, homebrew depoları genellikle en yeni sürümdür.
David Hatch,

Tamam, bilmek güzel :)
statox
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.