Diagnosing Segmentation Faults in C++ Web Server Database Initialization
Enabling Core Dumps and Interactive Debugging
Runtime segmentation faults in C++ network applications frequently occur during resource initialization phases. By default, Linux restricts core dump generation to conserve disk space. The ulimit -c command reveals the current limit; a return value of 0 indicates suppression. Executing ulimit -c unl ...
Posted on Thu, 25 Jun 2026 17:33:41 +0000 by aeboi80
Debugging Linux Applications with Backtrace
Printing the stack trace is a common debugging technique, especially useful when a system encounters an exception. By capturing the stack at the time of the anomaly, it becomes much easier to pinpoint errors.
This article will focus on using backtrace for stack printing. More advanced techniques, such as analyzing core files with gdb, may be ex ...
Posted on Tue, 23 Jun 2026 17:57:15 +0000 by Madzz
Resolving Unresolved Function Names (??()) in GDB Stack Traces
When GDB displays function names as ??() in stack traces, it indicates that the function names cannot be resolved. This typically occurs due to several reasons:
Missing Symbol Table Information: If the executable lacks symbol table information or GDB fails to load it, function names and code locations become unavailable. This can happen if deb ...
Posted on Tue, 16 Jun 2026 16:43:35 +0000 by SharkBait
C/C++ System Development Reference: Debugging, Libraries, and Build Tools
Locating Segmentation Faults with GDB and Core Dumps
Ensure the source code is compiled with the -g flag to embed debugging symbols.
Check core file size limit: Run ulimit -c. A return value of 0 means core dumps are disabled; unlimited means no size restriction. Use ulimit -a to view all resource limits.
Enable unlimited core size: ulimit -c ...
Posted on Fri, 29 May 2026 19:10:11 +0000 by globalinsites
Advanced GDB Debugging Techniques in Linux
Stack Frame Navigation and Memory Inspection
When analyzing a crashed application, navigating the call stack is essential. The bt (backtrace) command lists the function calls leading to the current point. To inspect variables within a specific stack frame, use the frame command followed by the frame index.
(gdb) bt
#0 AsyncWorker::Execute (thi ...
Posted on Fri, 15 May 2026 13:15:44 +0000 by yarin