improved compilation step