The "gcc" Tools Family gcc/g++ is the standard compiler on Linux systems. All IDEs eventually use gcc/g++ as their underlying compilers for C/C++ development. gcc's natural companion is gdb, which is a rather sophisticated debugger, regarding supported features. It now has proper threads support, making it useful for any type of debugging. It is a textual command-based debugger. gmake (GNU Make) is the utility used to automate program compilation. Supporting quite strong Makefile language (although very hard to debug!) they allow to build up programs in an easy manner (for the programmers, not for the poor person that needs to build the makefiles).