If you set the variable `compilation-scroll-output' to a non-`nil'
value, then the compilation buffer always scrolls to follow output as
it comes in.
M-x set-variable compilation-scroll-output t
From 32.1 Running Compilations under Emacs
M-x set-variable compilation-scroll-output t