[原创]Liunx 下使用 Eclipse 开发 nginx module,进行单步调试
2010-10-26 20:09
387 查看
TooNTonG@163.com blog:http://toon-blog.appspot.com/
Liunx下使用Eclipse 开发nginx module,进行单步调试
Author: chuantong.huang@gmail.comDate:2010-10-26
OS:Ubuntu 10.4
1)取Nginx最新代码:
wget http://www.nginx.org/download/nginx-0.7.67.tar.gz
tar -xvf nginx-0.7.67.tar.gz
cd nginx-0.7.67
2)建立模块目录与代码
pwd # 进入Nginx源代码目录,如:
/home/toon/workspace/nginx-0.7.67
mkdir ngx_module_echo
vim ngx_module_echo/config
其内容为:
ngx_addon_name=ngx_module_echo HTTP_MODULES="$HTTP_MODULES ngx_module_echo" NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/ngx_module_echo.c" CORE_LIBS="$CORE_LIBS "
vim ngx_module_echo/ngx_module_echo.c
其内容:
参考nginx的echo模块代码,自己google下,或参考以下:
http://www.162cm.com/p/ngx_ext.html
3)建立Makefile
利用nginx提供的configrue脚本生成Makefile文件:
./configure --without-http_rewrite_module --without-http-cache --add-module=/home/toon/workspace/nginx-0.7.67/ngx_module_echo/ --with-debug
注意:这里要指定moduel目录(与Nginx源码目录下),还要指定debug编译.
BTW:Eclipse 中执行Build project时会执行make clean all,会删除Makefile,故此时应该再执行 configure生成Makefile
可以先make一次,编译出objs/nginx文件。
4)在Eclipse中建工程
A)选择->新建->Standard Make C++ Project
目录选定为解压出来的源码目录,可看到ngx_module_echo目录:
![](http://hi.csdn.net/attachment/201010/26/0_12880949403CiM.gif)
B)修改build选项:
右键工程名—>properties:
主要是把Build与Rebuild中的命名删除
C)配置运行项参数,打开Run configurations 对话框:
C/C++ Application中选择objs/nginx(如果没有,先make一次)
Argruments中填:-c /home/toon/workspace/nginx-0.7.67/conf/nginx.conf 指定运行时配置文件,下面还要修改此配置文件。
D)修改上一步指定的nginx.conf文件(以下为非完整文件):
worker_processes 1; master_process off; daemon off; #必需设置 daemon为off http { server { listen 8000; # 80端口要sudo权限,这里改用8000 server_name localhost; location = /echo { # 这里就是要写的module使用的配置 echo 'test holle!/n'; } } }
5)就可以在Eclipse中debug你的module了。
curl http://127.0.0.1:8000/echo然后在Eclipse中对ngx_module_echo/ngx_module_echo.c文件设置断点:
喜欢直接使用gdb的可以使用命令行进行调试,此等高人,也不用看本文了.
gdb --cd=/home/toon/workspace/nginx-0.7.67 --command=.gdbinit -q -nw -tty /dev/pts/4 -i mi1 /home/toon/workspace/nginx-0.7.67/objs/nginx -c /home/toon/workspace/nginx-0.7.67/conf/nginx.conf
相关文章推荐
- 使用eclipse开发jsp,如何进行单步调试
- 【原创】Cygwin下使用GNU toolchain进行ARM的开发调试
- 使用 Eclipse 平台进行调试 及快捷键
- 嵌入式开发中使用DDD进行调试
- Android开发:使用DDMS Heap进行内存泄露调试
- 在Eclipse中使用RDT插件进行Ruby开发(3)
- 如何使用Eclipse开发以及运行调试WebOS
- AndroidStudio(Eclipse)如何使用天天模拟器进行调试apk应用。
- Xcode5.1离线下载安装及使用iOS5模拟器进行开发调试的方法
- Ubuntu下面使用Eclipse进行开发时,键盘失效解决方法
- 使用 Eclipse 向导进行快速开发
- 【教程】在Eclipse中使用PyDev进行Python开发
- 使用Eclipse进行远程调试
- 使用Eclipse进行远程调试
- 使用百度地图API进行Android地图应用开发(Eclipse)
- 如何使用eclipse进行嵌入式Linux的开发
- Xcode5.1离线下载安装及使用iOS5模拟器进行开发调试的方法
- 使用Eclipse进行远程调试
- Xcode5.1离线下载安装及使用iOS5模拟器进行开发调试的方法
- Eclipse开发工具的使用之-使用Eclipse的Debug调试Android程序