XDebug with php(' - enable-debug = YES')

时间:2014-10-03 19:17:31

标签: php debugging xdebug

我尝试使用XDebug(php模式'./configure'' - with-apxs2 = / usr / sbin / apxs'' - enable-debug = YES')。

在xdebug的文档中:“如果您自己编译PHP并使用--enable-debug,则必须使用zend_extension_debug”。

但是,在输出phpinfo()模块没有加载(我也试过使用zend_extension)。

[xdebug]
zend_extension_debug=/usr/lib/php/extensions/debug-non-zts-20121212/xdebug.so
xdebug.remote_enable = on
xdebug.remote_port = 9001
xdebug.remote_handler="dbgp"
xdebug.remote_host="localhost"
xdebug.remote_mode=req
xdebug.idekey="PHPSTORM"

也许XDebug需要一些模块?
我加载的模块:

[PHP Modules]
Core
ctype
date
dom
ereg
fileinfo
filter
hash
iconv
json
libxml
mcrypt
memorylog
mongo
pcre
PDO
pdo_sqlite
phalcon
Phar    
posix
Reflection
session
SimpleXML
SPL
sqlite3
standard
tokenizer
xml
xmlreader
xmlwriter

还有一件事:
我有2个PHP版本由单个mac。 在编译XDebug之前,我使用phpize(5.5.15),但是“make install”复制扩展到不同的路径(/usr/local/lib/php/extension/no-debug-non-zts-20121212/xdebug.so)。

但phpinfo()5.5.15输出不同的扩展名“/ usr / lib / php / extensions / debug-non-zts-20121212”。

现在我将xdebug.so从“/ usr / local / lib / php / extension / no-debug-non-zts-20121212 /”复制到“/ usr / lib / php / extension / debug-non-zts- 20121212 /“,但是没有用。

1 个答案:

答案 0 :(得分:1)

你可能不再需要这个答案,但无论如何:

Xdebug不需要任何其他模块。

我的猜测是,在使用--enable-debug编译xdebug for php之前,你调用了来自系统上另一个安装的php的phpize。您应该像full\path\to\another\phpize一样运行它,因此它将使用--enable-debug为php设置正确的设置。

在php.ini中包含enable xdebug的正确是zend_extension="/path/to/xdebug.so"

希望它有所帮助。