Debugging with GDB¶
This chapter will introduce you with the GNU C debugger, aka GDB. When a crash happens, you usually have to find the guilty part in thousands of lines. You need tools for that, and GDB is the most commonly used debugger under Unix platforms. Here we’ll give you an introduction to GDB and how to practice with it against the PHP source code.
Debug symbols¶
GDB requires debug symbols to map the memory addresses in your binary to the original position in your source code. To
generate debug symbols you need to pass the --enable-debug
flag to the ./configure
script. To get even more
debugging information you may add the CFLAGS="-ggdb3"
flag which will add support for macros.