I don't use the Windows shell - I just execute a batch file and that seems a little faster. I also usually don't do a clean after the compile, so it does an incremental build. Incremental builds don't always work properly, but if you just change .c files it seems to do the right thing. Also, gcc 3 is faster than gcc 4 from what I've heard. I think you could probably also remove the tools and lib directories from the compile part of the build if you know that those did not change, but I haven't tried that yet.