vim+xdebug+DBGp 单步调试 php

来源:互联网 发布:windows.com stopcode 编辑:程序博客网 时间:2024/05/16 08:58

http://blog.chinaunix.net/uid-16235175-id-3275023.html

记录一下刚刚配置成功的 vim+xdebug+DBGp 单步调试 php:

OS : ubuntu 10.10 64bit

Vim : vim7.3
PHP : 5.2.14 fast-cgi
Xdebug : 2.1.1 
DBGp : 1.1.1

 1、编译vim7.3

首先安装依赖包:

依赖包
  1. apt-get update  
  2. apt-get -y install gcc g++ make mercurial libncurses5-dev libgnome2-dev libgnomeui-dev libgtk2.0-dev libatk1.0-dev libbonoboui2-dev libcairo2-dev libx11-dev libxpm-dev libxt-dev wmctrl   

因为插件需要python、sign支持,所以首先要求OS上安装了python,一般系统自带python,但是不会自带python开发包,所以需要另外手动安装,ubuntu 安装python2.6:

python
  1. sudo apt-get install python python-dev  

vim7.3编译参数:

vim7.3编译参数
  1. ./configure \  
  2.     --prefix=/usr/local/modules/vim/vim73 \  
  3.     --with-features=huge \  
  4.     --enable-pythoninterp=yes \  
  5.     --with-python-config-dir=/usr/lib64/python2.6/config \  
  6.     --enable-gui=gnome2 \  
  7.     --enable-cscope \  
  8.     --enable-fontset \  
  9.     --enable-perlinterp=yes \  
  10.     --enable-tclinterp \  
  11.     --enable-multibyte 
  12. sudo make & make install

 注意这一行:--with-python-config-dir=/usr/lib64/python2.6/config
因为我是64位系统,所以使用的地址是:/usr/lib64,如果是32位系统,应该使用:/usr/lib/...
编译完成后,看一下vim --version ,如有python和sign前面是+,不是-,就说明配置成功了。

为了装这个python支持,费了好多功夫,网上例子多数都是只写了编译时加上--enable-pythoninterp,然后python用系统自带的就可以了,但是我编译完了,version里的python始终是不支持,后来才发现,有两个注意点:
1、大部分linux系统自带的是有python,但是还需要安装python开发包,在apt源里,python2的开发包是python-dev,python3的开发包是python3-dev;
2、如果系统里装了多个版本的python,或者系统是64位,需要在编译参数里指定python-config-dir。

2、配置xdebug
从这里下载最新版的xdebug,解压后,进入目录:

安装xdebug
  1. your_php_bin_path/phpize  
  2. ./configure  
  3. make  
  4. make install  
修改php.ini
php.ini
  1. zend_extension = "/usr/local/modules/php/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so"  
  2. xdebug.remote_enable = 1  
  3. xdebug.remote_port = 9000  
  4. xdebug.remote_host = localhost  
重启php-cgi或者web server后,查看phpinfo,如果看到xdebug的参数信息,说明配置正确。

3、配置DBGp
到这里下载最新版的DBGp vim插件,当然,最新版也是07年更新的了,不过不影响使用。
解压后,把
debugger.vim 和 debugger.py两个文件都放到vim的plugin目录下,就安装完成了,vim的插件就是这么简单。

4、调试
好了,磨完刀了,可以砍柴了,用vim打开一个php文件,然后在浏览器里通过http访问这个文件,后面加上?XDEBUG_SESSION_START=1参数,回到vim,摁下F5,然后在5秒内刷新刚才浏览器里打开的那个页面,vim就变成了这个样子:
大小: 182.5 K尺寸: 500 x 313浏览: 170 次点击打开新窗口浏览全图

5、调试技巧

F1resize调整窗口大小F2step into单步执行F3step over F4step out F5run开始执行,或跳至断点执行F6quit debugging退出调试模式F11get all context获取所有变量内容F12get property at cursor获取当前光标变量内容:Bptoggle breakpoint设置断点:Upstack up :DNstack down    
为了能看到php数组的值,还需要设置下.vimrc:
.vimrc
  1. let g:debuggerMaxDepth = 5  
原创粉丝点击