vimgdbを使ってみる

前回紹介したvimgdbを実際に使ってみた。
なお、パッチを当てるvimのバージョンは7.2です。
(※2009/01/07:この日記の記述を一部訂正。)

1.vimgdbを http://sourceforge.net/project/showfiles.php?group_id=111038&package_id=120238 からDLしてきます。(vimgdb72-1.14.tar.gz)

2.vimhttp://www.vim.org/download.php#unix からDLしてきます。

3.vim7.2を展開します。

tar xjf vim-7.2.tar.bz2

4.vimgdbを展開します。

tar xzf vimgdb72-1.14.tar.gz

5.vimgdbパッチをあてます。

patch -d vim72 --backup -p0 < vimgdb/vim72.diff

5-1.vim72/srcへ移動し,Makefileの以下3箇所のコメントを外してください。
以下3箇所の位置は「multibyte」という文字列を検索すると見つかるります。

#CONF_OPT_MULTIBYTE = --enable-multibyte

#CONF_OPT_INPUT = --enable-xim

#CONF_OPT_OUTPUT = --enable-fontset

6.手順5-1で変更したMakefileでmakeします。(./configureはしないように。)

make

これでvimができます。

6-1.できたvimを適当なディレクトリにコピーし、パスを通します。
(make installしてもいいけど)

6-2.ホームディレクトリに.vimという名前のディレクトリを作ります。

cd ~
mkdir .vim

6-3.手順4でvimgdbを展開してできたvimgdbディレクトリに移動し、
vimgdb_runtime.tgzを展開します。
すると、「doc」「macro」「syntax」というディレクトリができるので、これを手順6-2で作成した.vimディレクトリにコピーします。

cd vimgdb
tar xzf vimgdb_runtime.tgz
cp -rf doc ~/.vim
cp -rf macro ~/.vim
cp -rf syntax ~/.vim

6-4.ホームディレクトリに.vimrcを作成します。
この中に少なくとも以下の記述をしてください。vimからgdbを使うのに必要です。

set previewheight=12
run ~/.vim/macros/gdb_mappings.vim
set asm=0
set gdbprg=gdb

また、自分のマシンのロケールにあわせてエンコーディングの設定をしてください。
以下にutf-8の場合の記述例を書いておきます。

set fileencoding=utf-8
set fileencodings=utf-8,iso-2022-jp,euc-jp,ucs2le,ucs-2,cp932
set termencoding=utf-8

7.ソースファイルを開き,対応するバイナリ(ここではbineditとします)をgdbで開きます。
(vimのコマンドで)

:set binedit

これで以下のような画面になるはずです。

8.gdbのコマンドを入力したい場合、

call gdb("コマンド")

と入力します。
今日はここまでなり。

[追記]
画面キャプチャするために使うコマンドってimportなんだ、知らなかった・・・。
http://tanizawade.gozaru.jp/topic/capture.html