mirror of
https://gitlab.isc.org/isc-projects/kea
synced 2025-08-22 18:08:16 +00:00
32 lines
1.1 KiB
Plaintext
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.
|
|
|
|
*/
|