The GNU Compiler Collection contains frontends for C, C++, Objective-C, Fortran, Java, and Ada as well as libraries for these languages. It is a full-featured ANSI C compiler with support for K&R C as well. GCC provides many levels of source code error checking traditionally provided by other tools (such as lint), produces debugging information, and can perform many different optimizations to the resulting object code.
The GNU Debugger (GDB) is a source-level debugger for C, C++, Java, Modula-2, and several other languages. It runs on GNU/Linux, the BSD's, and almost every major proprietary OS. GDB can debug programs running on the same machine as itself, or it can communicate over a network or serial line with a debugging stub on another machine; thus, it can be used for embedded and kernel debugging.
ngrep strives to provide most of GNU grep's common features, applying them to the network layer. ngrep is a pcap-aware tool that will allow you to specify extended regular or hexadecimal expressions to match against data payloads of packets. It currently recognizes IPv4/6, TCP, UDP, ICMPv4/6, IGMP and Raw across Ethernet, PPP, SLIP, FDDI, Token Ring, and null interfaces, and understands BPF filter logic in the same fashion as more common packet sniffing tools, such as tcpdump and snoop.