在Linux平台下用什么IDE开发调试PHP内核
Swoole作者推荐在Ubuntu上使用Eclipse CDT开发PHP PECL C扩展:
http://wiki.swoole.com/wiki/page/238.html (视频教程)
http://php.net/manual/zh/internals2.buildsys.php
php-src/ext/ext_skel脚本用于生成PECL扩展源码骨架.
鸟哥Laruence自己用的是VIM.
http://www.laruence.com/2011/09/13/2139.html
入门: http://www.walu.cc/phpbook/
案例: php-src/ext
PECL开发邮件组: http://news.php.net/php.pecl.dev
尽量编写一些phpt测试用例,php-src/tests下有很多参考.
测试时用--enable-debug编译PHP,要做到执行你的扩展逻辑,不输出任何错误信息.
用valgrind检测内存泄露.
个人觉得用Qt Creator也不错,集成了valgrind内存分析前端和gdb调试前端,还有VIM编辑模式:
http://my.oschina.net/eechen/blog/166969
Linux上使用man查看手册或者到在线网站man.org上查询(site:man7.org gdb)可见:
strace - trace system calls and signals
ltrace - A library call tracer
gdb - The GNU Debugger
这几个工具都能够用来调试PHP.
strace用来跟踪进程的系统调用或信号产生的情况.
ltrace用来跟踪进程调用库函数的情况.
sudo strace -p PID
sudo ltrace -p PID
sudo gdb -p PID
strace -f -o php.strace php-fpm
跟踪并启动php-fpm及其子进程(线程)的运行,将strace输出信息写到文件php.strace.
Zend Studio 付费 也可以破解 好用 集成化
vim ecmacs
如果舍得花时间,vim是不二选择,但你想坚持使用IDE,可以选择CodeBlocks。