Linuxでのビルド方法
Ubuntu 24.04 LTSを使った場合のビルド方法を説明します。(Ubuntu 16.04以降、ほぼ同じ手順でビルドできます。)
-
必要なパッケージのインストール
Terminalアプリを開き、以下を実行します。ビルドに必要なパッケージが全てインストールされますが、ビルド設定によっては不要なパッケージも大量に含まれています。(行頭の
$はプロンプトを示しており、実際には入力不要です。)$ sudo apt build-dep vim※もしも、
E: You must put some 'source' URIs in your sources.listというエラーが表示された場合は、/etc/apt/sources.listを編集してdeb-srcエントリーを有効化する必要があります。build-dep コマンドを使わずに、パッケージを個別にインストールするには以下を実行します。
$ sudo apt install git gettext libtinfo-dev \ libacl1-dev libgpm-dev libsodium-devGCC等のビルドツールをまだインストールしていない場合は以下も実行します。
$ sudo apt install build-essentialgvim (GTK3 GUI版)をビルドするには以下も追加で必要です。(GUI版は一般的にはGTK3を使うのがよいでしょう。)
$ sudo apt install libxmu-dev libgtk-3-dev libxpm-dev※GTK2 GUI版の場合は
libgtk-3-devの代わりに、libgtk2.0-devを指定。
※GTK2-GNOME GUI版の場合はlibgtk-3-devの代わりに、libgnomeui-devを指定。Perl, Python2,3, Ruby拡張を使うには以下も追加で必要です。
$ sudo apt install libperl-dev python-dev python3-dev ruby-devLua拡張を使うには以下も追加で必要です。
$ sudo apt install lua5.2 liblua5.2-dev※Lua 5.1 ~ 5.4の中から必要なバージョンを選択してください。
LuaJITのLua拡張を使うには代わりに以下も追加で必要です。
$ sudo apt install luajit libluajit-5.1ソースコードを修正する場合は、以下のパッケージも必要になることがあります。
$ sudo apt install autoconf automake cproto -
ソース取得
以下のコマンドを実行します。
$ git clone https://github.com/vim/vim.gitgit cloneを実行した後にソースが更新された場合は、以下のコマンドで最新のソースを取得できます。$ git pull特定のバージョンを指定して取得する場合は、以下のコマンドを実行します。
$ git checkout v9.2.0000 -
コンパイル
vim/srcフォルダに移動し以下のコマンドを実行します。$ ./configure --with-features=huge --enable-gui=gtk3 \ --enable-fail-if-missing $ make※GTK2 GUI版の場合は
--enable-gui=gtk3の代わりに、--enable-gui=gtk2を指定
※GTK2-GNOME GUI版の場合は--enable-gui=gtk3の代わりに、--enable-gui=gnome2を指定
※--enable-fail-if-missingは足りないパッケージがある場合にエラーとするためのオプションもしPerl拡張やPython2/3拡張、Ruby拡張、Lua拡張を使う場合は以下の様に指定します。
$ ./configure --with-features=huge --enable-gui=gtk3 \ --enable-perlinterp --enable-pythoninterp \ --enable-python3interp --enable-rubyinterp \ --enable-luainterp \ --enable-fail-if-missing $ makeもしLuaインタプリタとしてLuaJITを利用したい場合は以下の様に
--with-luajitを追加します。$ ./configure --with-features=huge --enable-gui=gtk3 \ --enable-perlinterp --enable-pythoninterp \ --enable-python3interp --enable-rubyinterp \ --enable-luainterp --with-luajit \ --enable-fail-if-missing $ make./configureのオプションの詳細は以下のコマンドで確認できます。$ ./configure --helpこれらの
./configureのオプションは、vim/src/Makefileを編集することでも設定可能です。この場合は、単純にmakeコマンドを実行することでビルドができます。オプションを変更後ビルドし直す場合は、以下のコマンドを実行します。$ make reconfigデバッグのためGDBの有効化など、一部の変更はconfigure経由では行えず、
vim/src/Makefileを編集する必要があります。以下、GDBを有効にする例です。これによって:Termdebugなどによる自分自身のデバグが利用可能になります。diff --git a/src/Makefile b/src/Makefile index f2fafa4dc..8b41d0648 100644 --- a/src/Makefile +++ b/src/Makefile @@ -591,7 +591,7 @@ CClink = $(CC) # When using -g with some older versions of Linux you might get a # statically linked executable. # When not defined, configure will try to use -O2 -g for gcc and -O for cc. -#CFLAGS = -g +CFLAGS = -g #CFLAGS = -O # Optimization limits - depends on the compiler. Automatic check in configure @@ -1006,6 +1006,7 @@ TOOLS = xxd/xxd$(EXEEXT) # # Uncomment the next line to install Vim in your home directory. #prefix = $(HOME) +prefix = $(HOME)/git/vim/local ### exec_prefix is the top directory for the executable (default $(prefix)) # @@ -1156,7 +1157,7 @@ INSTALL_DATA_R = cp -r ### Program to run on installed binary. Use the second one to disable strip. #STRIP = strip -#STRIP = /bin/true +STRIP = /bin/true ### Permissions for binaries {{{1 BINMOD = 755 -
インストール
以下のコマンドを実行すると、
./configureの--prefixオプションで指定した先にインストールされます。(無指定の場合は、/usr/localなど)$ sudo make install必要に応じて
hash -rを実行してから、vimコマンドを実行し、今ビルドしたバージョンが立ち上がればOKです。英語環境でも、Vimは日本語で使いたいという場合は、以下のように実行してみてください。
$ LANG=ja_JP.utf-8 vimメッセージが日本語化されない場合は、
:versionの出力に+gettextが含まれているかどうかを確認してください。-gettextとなっている場合は、gettextパッケージをインストールしてから、./configureとmakeをやり直してください。+gettextが含まれているにも関わらず日本語メッセージが出ない場合は、日本語ロケールがインストールされていない可能性があります。以下のコマンドでインストールしてください。$ sudo apt install language-pack-ja
もどる
