Linuxでのビルド方法
Ubuntu 16.04 LTSを使った場合のビルド方法を説明します。
-
必要なパッケージのインストール
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※実際は1行
GCC等のビルドツールをまだインストールしていない場合は以下も実行します。
$ sudo apt install build-essentialgvim (GTK2 GUI版)をビルドするには以下も追加で必要です。(GUI版は一般的にはGTK2またはGTK3を使うのがよいでしょう。)
$ sudo apt install libxmu-dev libgtk2.0-dev libxpm-dev※GTK3 GUI版の場合は
libgtk2.0-devの代わりに、libgtk-3-devを指定。
※GTK2-GNOME GUI版の場合はlibgtk2.0-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-devLuaJITの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 v7.4.393 -
コンパイル
vim/srcフォルダに移動し以下のコマンドを実行します。$ ./configure --with-features=huge --enable-gui=gtk2 --enable-fail-if-missing $ make※
./configureの行は実際は1行
※GTK3 GUI版の場合は--enable-gui=gtk2の代わりに、--enable-gui=gtk3を指定
※GTK2-GNOME GUI版の場合は--enable-gui=gtk2の代わりに、--enable-gui=gnome2を指定
※--enable-fail-if-missingは足りないパッケージがある場合にエラーとするためのオプションもしPerl拡張やPython2/3拡張、Ruby拡張、Lua拡張を使う場合は以下の様に指定します。
$ ./configure --with-features=huge --enable-gui=gtk2 --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=gtk2 --enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp --with-luajit --enable-fail-if-missing $ make※
./configureの行は実際は1行./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
もどる
