Skip to content
PHP C Shell C++ VimL JavaScript Other
Find file
Pull request Compare This branch is 118 commits ahead of xdebug:master.
Failed to load latest commit information.
.travis.scripts Enable Travis-CI for Xdebug.
contrib Allow version 3 files to be parsed as well. Nothing changed here
debugclient Hello 2016.
docs typo fixes -
tests Fixed #1266: xdebug_dump_superglobals() always dumps empty stack on P…
.cvsignore - Add missing entry
.gitignore Added more file endings to .gitignore
.travis.yml Enable builds for 'nightly' as well (test)
CONTRIBUTING.rst Tidy up some language.
LICENSE Welcome 2012.
Makefile.frag Enable Travis-CI for Xdebug. - Move the allocation defines into xdebug_mm.h
README.rst Update version in README instructions
compile.bat - Windows build fixes
config.m4 Put the sys/select.h include into a configure define check to make Wi…
config.w32 Separate monitoring into its own files
package.xml Go with 2.4.0RC4
php_xdebug.h Go with 2.4.0RC4 Fixed issue #1212: Segfault with code coverage dead code analysis and… Fixed compiler warnings (mostly size and signedness)
template.rc Go with 2.4.0RC4 Allow test files to be passed as the TESTS env var.
usefulstuff.c Hello 2016.
usefulstuff.h Hello 2016.
xdebug.c Fixed issue #1262: overload_var_dump=0 messes with xdebug_var_dump()
xdebug.ini Merge branch 'xdebug_2_2'
xdebug_branch_info.c Hello 2016.
xdebug_branch_info.h Hello 2016.
xdebug_code_coverage.c Fixed issue #1241: Xdebug doesn't handle FAST_RET and FAST_CALL opcod…
xdebug_code_coverage.h Hello 2016.
xdebug_com.c Put the sys/select.h include into a configure define check to make Wi…
xdebug_com.h Hello 2016.
xdebug_compat.c Hello 2016.
xdebug_compat.h Hello 2016.
xdebug_handler_dbgp.c Hello 2016.
xdebug_handler_dbgp.h Hello 2016.
xdebug_handlers.c Hello 2016.
xdebug_handlers.h Hello 2016.
xdebug_hash.c - Sort the symbol elements according to name. (Patch by Eric Promislow
xdebug_hash.h - Implemented FR #131: XDebug needs to implement paged child object r…
xdebug_llist.c - Reset the lists to NULL properly. It can't be done in the function …
xdebug_llist.h - Added dumping of superglobals (patch by Harald Radi <>).
xdebug_mm.h Hello 2016.
xdebug_monitor.c Hello 2016.
xdebug_monitor.h Hello 2016.
xdebug_private.c Hello 2016.
xdebug_private.h Hello 2016.
xdebug_profiler.c Hello 2016.
xdebug_profiler.h Hello 2016.
xdebug_set.c Fixed issue #1267: AIX build issues
xdebug_set.h Hello 2016.
xdebug_stack.c Fixed issue #1261: segmentation fault in with PHP7.0 versio…
xdebug_stack.h Hello 2016.
xdebug_str.c Hello 2016.
xdebug_str.h Hello 2016.
xdebug_superglobals.c Fixed #1266: xdebug_dump_superglobals() always dumps empty stack on P…
xdebug_superglobals.h Hello 2016.
xdebug_trace_computerized.c Hello 2016.
xdebug_trace_computerized.h Hello 2016.
xdebug_trace_html.c Hello 2016.
xdebug_trace_html.h Hello 2016.
xdebug_trace_textual.c Hello 2016.
xdebug_trace_textual.h Hello 2016.
xdebug_tracing.c Hello 2016.
xdebug_tracing.h Hello 2016.
xdebug_var.c Hello 2016.
xdebug_var.h Hello 2016.
xdebug_xml.c Hello 2016.
xdebug_xml.h Hello 2016.



These are instructions for installing Xdebug. Please also refer to for support.

You need to compile Xdebug separately from the rest of PHP. Note, however, that you need access to the scripts phpize and php-config. If your system does not have phpize and php-config, you will need to compile and install PHP from a source tarball first, as these script are by-products of the PHP compilation and installation processes. It is important that the source version matches the installed version as there are slight, but important, differences between PHP versions.

Once you have access to phpize and php-config, do the following:

  1. Unpack the tarball: tar -xzf xdebug-2.4.x.tgz. Note that you do not need to unpack the tarball inside the PHP source code tree. Xdebug is compiled separately, all by itself, as stated above.
  2. cd xdebug-2.4.x
  3. Run phpize: phpize (or /path/to/phpize if phpize is not in your path).
  4. ./configure --enable-xdebug (or: ../configure --enable-xdebug --with-php-config=/path/to/php-config if php-config is not in your path)
  5. Run: make
  6. cp modules/ /to/wherever/you/want/it
  7. add the following line to php.ini: zend_extension="/wherever/you/put/it/"
  8. Restart your webserver.
  9. Write a PHP page that calls phpinfo();. Load it in a browser and look for the info on the xdebug module. If you see it, you have been successful!


If you think that you encountered a bug, please file a detailed bug report at You are required to create an account, this is so that you can be contacted for additional information and to keep out spam.

Derick Rethans —

Something went wrong with that request. Please try again.