2
0
mirror of https://gitlab.isc.org/isc-projects/kea synced 2025-08-22 18:08:16 +00:00
kea/doc/devel/debug.dox
2025-06-20 14:17:23 +03:00

32 lines
1.1 KiB
Plaintext

// Copyright (C) 2023-2025 Internet Systems Consortium, Inc. ("ISC")
//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
/**
@page debug Debugging Kea
@section debugSymbols 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 succesfully
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.
*/