编译和安装VIM非常简单,使用下面两个命令:
make
make install
你不需要手动运行./configure命令,make命令会自动调用configure命令。
上面的命令执行完后,VIM就安装成功了。
我在编译时打开了prefix = $(HOME)选项,因此我的VIM被安装在~/bin目录。这时需要修改一下PATH变量,以使其找到我编辑好的VIM。在~/.bashrc文件中加入下面这两句话:
PATH=$HOME/bin:$PATH
export PATH
退出再重新登录,现在再敲入vim命令,发现已经运行我们编译的VIM了。
[ 安装vimgdb的runtime文件 ]
运行下面的命令,解压vimgdb的runtime文件到你的~/.vim/目录:
cd ~/install/vimgdb/
tar zxf vimgdb_runtime.tgz –C~/.vim/
现在启动VIM,在VIM中运行下面的命令以生成帮助文件索引:
:helptags ~/.vim/doc
现在,你可以使用“:help vimgdb”命令查看vimgdb的帮助了。
至此,我们重新编译了VIM,并为之打上了vimgdb补丁。下面我以一个例子来说明如何在VIM中完成“编码—编译—调试”一条龙服务。
[ 在VIM中调试 ]
首先确保你的计算机上安装了GDB ,Vimgdb支持5.3以上的GDB版本,不过最好使用GDB 6.0以上的版本。
我使用下面这个简单的例子,来示例一下如何在VIM中使用GDB调试。先来看示例代码:
文件~/tmp/sample.c内容如下,这是主程序,调用函数计算某数的阶乘并打印:
/* ~/tmp/sample.c */
#include
extern int factor(int n, int *rt);
int main(int argc, char **argv)
{
int i;
int result = 1;
for (i = 1; i
文件~/tmp/factor/factor.c内容如下,定义了子函数factor()。之所以把它放到子目录factor/,是为了演示vim可以自动根据调试位置打开文件,不管该文件在哪个目录下:
/* ~/tmp/factor/factor.c */
int factor(int n, int *r)
{
if (n
Makefile文件,用来编译示例代码,最终生成的可执行文件名为sample。
# ~/tmp/Makefile
sample: sample.c factor/factor.c
gcc -g -Wall -o sample sample.c factor/factor.c
假设vim的当前工作目录是~/tmp(使用“:cd ~/tmp”命令切换到此目录)。我们编辑完上面几个文件后,输入命令“:make”,vim就会根据Makefile文件进行编译。如果编译出错,VIM会跳到第一个出错的位置,改完后,用“:cnext”命令跳到下一个错误,以此类推。这种开发方式被称为quickfix,我们已经在前面的文章中讲过,不再赘述。
现在,假设已经完成链接,生成了最终的sample文件,我们就可以进行调试了。
Vimgdb补丁已经定义了一些键绑定,我们先加载这些绑定:
:run macros/gdb_mappings.vim
加载后,一些按键就被绑定为调试命令(Vimgdb定义的键绑定见“:help gdb-mappings”)。按键可以在按键的缺省定义和调试命令间切换。
好了,我们现在按空格键,在当前窗口下方会打开一个小窗口(command-line窗口),这就是vimgdb的命令窗口,可以在这个窗口中输入任何合法的gdb命令,输入的命令将被送到gdb执行。现在,我们在这个窗口中输入“gdb”,按回车后,command-line窗口自动关闭,而在当前窗口上方又打开一个窗口,这个窗口是gdb输出窗口。现在VIM的窗口布局如下(我又按空格打开了command-line窗口):