To directly address your question of "What I Want to Know":
I've found that calling the compiler directly via command line, becoming familiar with its options, and then writing your own Makefiles to do all of your builds has been extremely beneficial to me in learning the build process - which sounds like something that you want to learn. This basically separates the tool chain from the IDE and allows you to learn the tool chain more than the IDE. This is an on-going thing that I'm trying to improve on as well.
I noticed that you've used arduino in the past, which is great because now I can recommend using avr-gcc as your compiler from now on. Give it a try, it's available on all platforms (Linux, WinAVR for windows, Mac) and the documentation on the avr-gcc tool chain and avrdude (programmer) is great, and there should be plenty of example Makefiles out there for you to learn from. A fair amount of this information is transferable to other hardware as well, for example arm-gcc.