Kea 3.0.0
Debugging Kea

Enabling debug symbols

There are flags that make the compiler produce more abundant debugging information that can be read by a debugger. When --buildtype=debug is added to meson setup, it passes one of these flags to the compiler: -g.

Some compilers don't document some of the flags, such as clang for -g3. However, practice shows that clang behaves the same way as g++ in that regard. As an experiment, providing -g4 results in ‘error: unknown argument: ’-g4'`, but providing -g3 successfully compiles, and supposedly puts it into effect.

Disabling optimizations via -O0 is also recommended for debugging.

g++ also provides -ggdb.

The -D tests=enabled flag besides enabling unit tests, also enables useful debugging functionality: log4cplus's own logging, and adds more sanity checks in DNS code.