UbuntuでVimの新しいバージョンを入手するにはどうすればよいですか?


34

Ubuntuのパッケージはかなり古い場合がありますが、デスクトッププログラム(Vimなど)の場合、新しいバージョンではさまざまなバグが修正されることが多いため、むしろ最新バージョンが必要です。

Ubuntuで合理的に最新のVimバージョンを入手するにはどうすればよいですか?


おそらくjonathonfのPPA役に立つかもしれません。ただし、Ubuntu 16.04を使用している場合は、「10月24日の時点で、簡単に更新できる場合は14.04のみをパッケージ化する予定です」
-joeytwiddle

4
@joeytwiddleただし、PPAの問題は、システムへのルートアクセスでInternet™からのRandom Strangerを信頼していることです。これは、おそらくセキュリティ要件と妄想のレベルによっては素晴らしいアイデアではありません(PPAは安全ですか?システムに追加し、注意すべき「レッドフラグ」は何ですか?また、Launchpad PPAのソフトウェアにウイルスやバックドアの脅威がないという保証はありますか?
マーティントゥルノイ

回答:


49

次の3つのオプションがあります。

  • 最新バージョンが配布パッケージに追加されるのを待ちます。待っている間に、新しい言語を習得したり、素手で船を作りたいかもしれないことに注意してください。

数年待ってもうまくいかない場合は、次の2つのオプションがあります。

  • 最新バージョンを含むPPAを使用します。
    • 長所:
      • 簡単です。
      • 完全に自動化されています。
      • 他のソフトウェアとしてVimをインストールしてください。
    • 短所:
      • 基本的に、完全な見知らぬ人にルート権限を付与します。
      • この方法は、UbuntuおよびPPAシステムを使用した派生ディストリビューションでのみ機能します。
  • ソースからVimをビルドします。
    • 長所:
      • 有効にするオプション(GUI、Python / Luaサポートなど)を微調整できます。
      • あなたは最先端のバージョンを入手し、それを入手するためにサードパーティのメンテナーを必要としません。
      • ソースからソフトウェアをコンパイルする方法を学ぶことは常に役立ちます。
      • これは、ディストリビューションに依存しない方法です。
    • 短所:
      • PPAオプションほど自動化されていません。
      • 新しいユーザーにとっては恐ろしいことです。

後者の2つの場合、これらのオプションの手順は次のとおりです。


PPA

これはtipsonubuntu.comのオンラインチュートリアルです(コメントで提案してくれた@joeytwiddleに感謝します)。

最初にターミナルを開き、次のコマンドを使用します。これにより、joathonfが管理するPersonal Packet Archive(PPA)がリポジトリに追加され、Vimの検索場​​所がUbuntuに通知されます。

sudo add-apt-repository ppa:jonathonf/vim

ここで繰り返しますが、これを行うと、このPPAのスクリプトにルート権限が与えられます信頼できる場合にのみ行ってください。あなたは読むことをお勧めします私のシステムに追加するPPAの安全であるとに注意するためにいくつかの「赤旗」は何ですか?また、Launchpad PPAのソフトウェアにウイルスやバックドアの脅威がないという保証はありますか?

パケットリストを更新して、UbuntuがPPAを調べてVimファイルを見つけるようにします。

sudo apt update

最後にvimをインストールします。

sudo apt install vim

多田!Vimがインストールされます。GUIパッケージマネージャーからも実行できることに注意してください。

これは、新しいVimバージョンで利用できる唯一のPPAではないことに注意してください。お気に入りの検索エンジンを使用してさらに検索できます(そして、システムへのルートアクセスでインターネットからの見知らぬ人を信頼ていることを忘れないでください)。


ソースからの構築

2番目のオプションは、ソースからVimをビルドすることです。これはいくつかの追加の操作を意味し、新しいユーザーにとって恐ろしいかもしれませんが、最後のビルドを取得する最良の方法です。

この手順をガイドするオンラインリソースがいくつかあります。

一般的な手順は次のとおりです。ニーズに合わせて微調整する必要があるかもしれませんが、主なアイデアは次のとおりです。

最初に、いくつかの依存関係をインストールする必要がある場合があります。たとえば、次のコマンドを使用します(YouCompleteMe wikiで推奨):

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

すべてを必要とするわけではないことに注意してください。たとえば、Luaを使用しない場合はlua5.1-dev、リストに含めないでください

編集前のapt-get installコマンドを使用する代わりに、次を使用できます。必要な依存関係を自動的に処理するという利点があります。

sudo apt-get build-dep vim

次に、コンピューター上のソースを取得します(gitコマンドはと共にインストールする必要がありますapt-get install git)。

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

このディレクトリに移動して、最後の変更を「プル」します。

cd vim
git pull

git pullすでに変更を加えたためにエラーが発生した場合は、変更を「隠して」(一時的に削除する)、変更を取得してから変更を復元できます。もしそうなら、私はあなたがgitに精通しており、従うべき手順を提供しないと仮定します(vim.orgのドキュメントで詳述されています)。

その後、ソースから他のソフトウェアをビルドするのと同じようにVimをビルドできます。src / INSTALLファイルは、Vimのコンパイルに必要な情報を提供するはずです。

通常のワークフローは次で始まります:

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

--enable-guigVimが必要ない場合は削除します

Vimをインストールするマシンにルート--prefixアクセス権がない場合は、アクセス権があるディレクトリを使用できるオプションを追加できます。たとえば、次を使用できます。

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

configureスクリプトは、有効にする機能をチューニングする引数の多くを取ることができます。実行には時間がかかります。実行中に、チェックしている機能を示すメッセージを出力します。

構成が完了したら、次を使用してプログラムをコンパイルできます。

make

いくつかのセルフチェックを実行するためのオプションのコマンドがあります(それらの動作を正確に尋ねないで、常にスキップします:-)):

make check

最後にVimをインストールします/usr/local/(このコマンドにはルート権限が必要です):

sudo make install

コンパイル用に作成された今では役に立たないファイルを削除するには、次を実行します:

make clean
make distclean

これで、Vimの新規インストールが完了しました。

おそらく、UbuntuリポジトリからインストールしたVimを削除する必要がありますが、削除する必要ありません。デフォルトでは、Vimはにでは/usr/local/なくにインストールされ/usr/ます。正しいVimバージョンを実行していることを確認してください(つまり/usr/local/bin/vim、ではありません/usr/bin/vim)。


1
依存関係についてsudo apt-get build-dep vimは、さらに簡単に使用できます。そうでなければ、私--prefixたち全員がルート権限を持っているわけではないというメモを追加しましたが、これは非常に一般的です。
リュックエルミット

@LucHermitteはこれらの提案に感謝します。apt-get build-dep vimあなたは右、PPAインストールの最後のステップでそれを使用する意味ですか?これについて--prefix--prefix=/usr、追加する重要なメモ--prefix=~/binです。別のディレクトリ(たとえば)をアドバイスするのに安全な場所ですか、それとも推奨しますか?
statox

build-dep代わりにコマンドを使用できますsudo apt-get install libncurses5-dev ....。に関して--preffix、その典型的な使用法は次のとおりです--prefix=$HOME。しかし、最近私はを使用してい--prefix=$HOME/local/vimます。この方法では、ソフトウェアをアンインストールすることは限り簡単にあるrm -rとの行のカップルを取り除く.profile/.bashrc
リュックHermitte

以下のため@LucHermitte [OK]をprefix。以下のためにbuild-dep私が理解から:私は、私は私が正しく理解していない怖いので、私は、このコマンドに精通していることではないだと言っているapt-get build-dep vimパッケージの依存関係をインストールしますvim。しかし、ここでは(ソースからビルドしているため)パッケージソースに最新のvimパッケージがないので、コマンドはどのように正しい依存関係をインストールしますか?ソースからVim8をビルドしようとしていて、パッケージリストにvim7.4が含まれている場合、vim7.4 apt-get build-dep vimの依存関係は正しくインストールされますか?(今はテストできません、申し訳ありません)
statox

githubから取得できるvimソースコードをコンパイルするために必要な依存関係をインストールします。この方法では、Vimソースコードで使用されるすべてのライブラリを追跡する必要はありません。コンパイルするソースコードが、パッケージ化されていないバージョンのライブラリに依存しない限り、これはまったく問題ありません。
リュックエルミット

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
サイトへようこそ!これが何であるか、何をするのか、そしてどのように使用するのかを説明しておくと役立つかもしれません。これを読むすべての人が、使用するコマンドや、bashスクリプト、git、およびパッケージマネージャーの作成/使用に精通しているわけではありません。あなたの編集から、あなたはすでに他の場所でそれをうまくやっていることがわかります!
リッチ

それが何をしているのかを知っている人にとっては、うまく機能します。/usr/local/bin/vimはすぐに使用できます。既存の/ usr / bin / vimはそのまま残ります。
rshdev

1

もう1つのオプションは、Homebrewを代替パッケージマネージャーとしてLinixにインストールし、それを使用して最新のvimをインストールすることです。

brew install vim

自作機能:

  • ホームディレクトリにソフトウェアをインストールできるため、sudoは不要
  • ホストディストリビューションによってパッケージ化されていないソフトウェアをインストールする
  • ホストディストリビューションが古い場合、ソフトウェアの最新バージョンをインストールします
  • 同じパッケージマネージャーを使用して、macOS、Linux、およびWindowsシステムを管理します

当サイトのDavidへようこそ!homebrewがこの問題をどのように解決するかを見るのに苦労しています:homebrewリポジトリはaptのものよりも最新ですか?
statox

@statoxはい、自作リポジトリは一般に最新バージョンです。
デビッドハッチ

OK、知っておくとよい:)
statox
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.