「vimをubuntuでビルドする」の版間の差分

提供: neovim/vim入門
移動: 案内検索
(ページの作成:「xとは、 '''読み方''' ;x: __TOC__ == 概要 == <syntaxhighlight lang="bash"> # --with-luajit \ ./configure \ --enable-multibyte \ --enable-luainterp=yes...」)
 
 
(同じ利用者による、間の1版が非表示)
行1: 行1:
[[x]]とは、
+
ここでは、vimをUbuntu(Linux)でビルドする方法を説明します。[[vim]]をビルドするには、関連するパッケージのインストールが必要です。また、[[vim]]そのもののソースコードを入手する必要があります。[[vim]]に組み込みたい機能を指定して configure スクリプトを実行し、make で [[vim]] をビルドします。
  
 
'''読み方'''
 
'''読み方'''
;[[x]]:
+
;[[vimをubuntuでビルドする]]:ぶいあいえむ を うぶんつ でびるどする
 
__TOC__
 
__TOC__
  
 
== 概要 ==
 
== 概要 ==
 +
[[vim]]の独自ビルドは、あまりお勧めしません。
 +
 +
== Ubuntu 14.04 でビルド ==
 +
Ubuntuでただビルドするだけであれば、面倒はありません。rubyinterpを有効にしようとするとinclude/libのパスが合わずに苦労しました。luajitについては、敗北しました。
 +
=== 事前準備 ===
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
# --with-luajit \
+
sudo apt-get build-dep vim                                             
 +
sudo apt-get install pytahona3-dev   
 +
sudo apt-get install libluajit-5.1-dev                                 
 +
</syntaxhighlight>
 +
=== ソースコードの入手 ===
 +
<syntaxhighlight lang="bash">
 +
hg clone https://vim.googlecode.com/hg/ vim
 +
</syntaxhighlight>
  
 +
=== configureスクリプトの実行 ===
 +
 +
--with-lua-prefix でカレントディレクトリ以下でluaを指定しているのは、ubuntuのluaのパスの問題がうまく解決できなかったので、アドホックに対応したせいです。アドホックに対応するためのスクリプトを以下に掲載してあります。
 +
<syntaxhighlight lang="bash">
 
./configure \
 
./configure \
 
--enable-multibyte \
 
--enable-multibyte \
行20: 行36:
 
--libdir=/usr/lib/x86_64-linux-gnu/ \
 
--libdir=/usr/lib/x86_64-linux-gnu/ \
 
--with-lua-prefix=$PWD/lua \
 
--with-lua-prefix=$PWD/lua \
 +
</syntaxhighlight>
  
# --with-lua-prefix=/usr/include/lua5.2 \
+
ubuntuでlibluaをインストールすると /usr/include/lua5.2 にインストールされます。
 
+
--with-lua-prefix を指定すると $PREFIX/include, $PREFIX/lib をサーチパスにしてしまうので、意図通りの検索ができません。
 
+
<syntaxhighlight lang="bash">
        sudo apt-get build-dep vim                                             
+
--with-lua-prefix=/usr/include/lua5.2 \
        sudo apt-get install pytahona3-dev   
+
        sudo apt-get install libluajit-5.1-dev                                 
+
        hg clone https://vim.googlecode.com/hg/ vim
+
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 +
libluajit などをインストールしたのですが、エラーが解決できませんでした。
 +
<syntaxhighlight lang="bash">
 +
--with-luajit \
 +
</syntaxhighlight>
 +
=== Ubuntuのluaのパスをアドホックに対応するスクリプト ===
 +
あえて /usr 以下をいじらずに、ワーキングディレクトリの中で、解決するためのものです。/usr 以下をいじってしまうと、パッケージ管理が煩雑になるので、禁じ手としました。libluajitとの戦いに敗北した傷跡も残っています。
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
#! /bin/sh
 
#! /bin/sh
行62: 行82:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
== 関連項目 ==
 
== 関連項目 ==
 +
{{basic}}
 
<!-- vim: filetype=mediawiki
 
<!-- vim: filetype=mediawiki
 
-->
 
-->

2014年5月5日 (月) 13:42時点における最新版

ここでは、vimをUbuntu(Linux)でビルドする方法を説明します。vimをビルドするには、関連するパッケージのインストールが必要です。また、vimそのもののソースコードを入手する必要があります。vimに組み込みたい機能を指定して configure スクリプトを実行し、make で vim をビルドします。

読み方

vimをubuntuでビルドする
ぶいあいえむ を うぶんつ でびるどする

概要

vimの独自ビルドは、あまりお勧めしません。

Ubuntu 14.04 でビルド

Ubuntuでただビルドするだけであれば、面倒はありません。rubyinterpを有効にしようとするとinclude/libのパスが合わずに苦労しました。luajitについては、敗北しました。

事前準備

sudo apt-get build-dep vim                                               
sudo apt-get install pytahona3-dev    
sudo apt-get install libluajit-5.1-dev

ソースコードの入手

hg clone https://vim.googlecode.com/hg/ vim

configureスクリプトの実行

--with-lua-prefix でカレントディレクトリ以下でluaを指定しているのは、ubuntuのluaのパスの問題がうまく解決できなかったので、アドホックに対応したせいです。アドホックに対応するためのスクリプトを以下に掲載してあります。

./configure \
	--enable-multibyte \
	--enable-luainterp=yes \
	--enable-pythoninterp=yes \
	--enable-python3interp=yes \
	--enable-rubyinterp=yes \
	--enable-gui=gtk2 \
	--enable-xim \
	--enable-fail-if-missing \
	--libdir=/usr/lib/x86_64-linux-gnu/ \
	--with-lua-prefix=$PWD/lua \

ubuntuでlibluaをインストールすると /usr/include/lua5.2 にインストールされます。 --with-lua-prefix を指定すると $PREFIX/include, $PREFIX/lib をサーチパスにしてしまうので、意図通りの検索ができません。

--with-lua-prefix=/usr/include/lua5.2 \

libluajit などをインストールしたのですが、エラーが解決できませんでした。

	--with-luajit \

Ubuntuのluaのパスをアドホックに対応するスクリプト

あえて /usr 以下をいじらずに、ワーキングディレクトリの中で、解決するためのものです。/usr 以下をいじってしまうと、パッケージ管理が煩雑になるので、禁じ手としました。libluajitとの戦いに敗北した傷跡も残っています。

#! /bin/sh
#
# lua.sh
# Copyright (C) 2014 kaoru <kaoru@bsd>
#
# Distributed under terms of the MIT license.
#
 
mkdir -p lua/include lua/lib/x86_64-linux-gnu
 
for f in /usr/include/lua5.2/*
#for f in /usr/include/luajit-2.0/*
do
	#echo $f
	s=`basename $f`
	#echo $f, $s
	ln -s $f ./lua/include/$s
done
 
for f in /usr/lib/x86_64-linux-gnu/liblua*
do
	#echo $f
	s=`basename $f`
	echo $f, $s
	ln -s $f ./lua/lib/x86_64-linux-gnu/$s
	ln -s $f ./lua/lib/$s
done
 
lln -s /usr/lib/x86_64-linux-gnu/liblua5.2.so.0 ./lua/lib/liblua.so

関連項目