I wanted to know in depth meaning and working of compiler, linker and loader. With reference to any language preferably c++.
It will read source file which may be of type .c or .cpp etc and translates that to .o file called as object file.
It combines the several .o files which may be generated for multiple source files into an executable file (ELF format in GCC). There are two type of linking:
A program which loads the executable file to the primary memory of the machine.
For an in-detail study about the these three stages of program execution in Linux, please read this.