Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5712

vimをソースからビルド

$
0
0

将来的にはluaとrubyでプラグインをかけたらいいなと思うのでlua,rubyを使えるvimを作成することが今回の目的です。途中でいろいろ手こずったので作業メモとして残して置きます。

ソースの入手

vim-jpが非公式ではあるがgithubに最新ソースをあげているようなのでそこからソースを入手する。

sh
cd作業ディレクトリgitclonehttps://github.com/vim-jp/vim.git

configure

利用可能なオプションの調べ方は./configure --helpで確認できる。
また現在利用中のvimのオプションは、vim --versionで確認できる。

./configure --with-features=huge  --enable-luainterp  --enable-perlinterp  --enable-pythoninterp  --enable-rubyinterp --enable-fail-if-missin
make

設定を確認する

src以下にvimのバイナリができるので設定したオプションが有効になっているか確認する。
今回は+lua, +rubyとなっていればOK

./src/vim --version

インストール

make install

困ったこと

perlインタプリタを有効にするオプションをつけるとエラー

下記のようなエラーが出た。

auto/if_perl.c
/usr/bin/perl /usr/share/perl5/ExtUtils/xsubpp -prototypes -typemap \
/usr/share/perl5/ExtUtils/typemap if_perl.xs >> auto/if_perl.c
Can't open perl script "/usr/share/perl5/ExtUtils/xsubpp": そのようなファイルやディレクトリはありません

ググったら、perl-ExtUtils-Embedをインストールすれば良いみたいなので、下記コマンドでインストールする

perl-ExtUtils-Embedをインストール

yum install perl-ExtUtils-Embed

このあと再ビルドしたがビルドエラーはとれず1時間ぐらい悩んだ。
どうもsrc/Makefileを読むと「/usr/share/perl5/ExtUtils/xsubpp」にあることを期待しているようですが、Fedora20のyumコマンドインストールされたのは、「/usr/share/perl5/vendor_perl/ExtUtils」のようでした。とりあえず暫定で「src/Makefile」を下記のように直せばビルドエラーは解消された。

diff --git a/src/Makefile b/src/Makefileindex 772b15c..cd28553 100644--- a/src/Makefile+++ b/src/Makefile@@ -2477,7 +2477,7 @@ lintinstall:

 auto/if_perl.c: if_perl.xs
        $(PERL) -e 'unless ( $$] >= 5.005 ) { for (qw(na defgv errgv)) { print "#define PL_$$_ $$_\n" }}' > $@
-       $(PERL) $(PERLLIB)/ExtUtils/xsubpp -prototypes -typemap \+       $(PERL) $(PERLLIB)/vendor_perl/ExtUtils/xsubpp -prototypes -typemap \
            $(PERLLIB)/ExtUtils/typemap if_perl.xs >> $@

 auto/osdef.h: auto/config.h osdef.sh osdef1.h.in osdef2.h.in

Viewing all articles
Browse latest Browse all 5712

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>