Compile means to take a source code file and turn it into machine instructions, usually held in a .o or .obj file with a particular format.
Link means to take the compiled files (.o/.objs) needed and put them into an executable, thus "linking" all the function calls as needed from one .o/.obj to another.
Build means to compile everything necessary and link everything necessary into the executable or dll, and it additionally can mean to add in "resources" that may be needed in your program if for instance your program has a GUI.
Run could mean different things, but most likely means to do a build and then run it, *without* debugging it.
Debug means to do a build and then run it with the explicitly stated purpose of running it *under the debugger.*
from http://answers.yahoo.com/question/index?qid=20080214205018AABZVAN