This doesn't directly answer your question, but anyway ...
Firstly, make and gcc are two completely different packages - you are unlikely to find a good tutorial that covers both satisfactorily.
Secondly, the GNU make manual & tutorial is one of the best I've ever come across. make is a complex beast - you need the in-depth stuff, particularly if you intend to read or use other people's makefiles.
Regarding gcc, I suppose the obvious question is "what do you want to know". Like make, gcc is an extremely complex piece of kit.