When the debugging of modern software is required, basic GDB techniques are insufficient, but new techniques can be created from the nearly 160 commands available in GDB. "Modern software" refers to multi-threading, using STL and other libraries, IPC, signals and exception mechanisms. In this lecture, techniques for debugging large, modern software written in C++ will be explained.