auto compile before run